这是我的两个类Err和ErrorDemo
class Err {
String msg;
int severity;
public Err(String message,int severe) {
msg=message;
severity=severe;
}
}
public class ErrorDemo {
String msgs[]={
"OutPut Error",
"Input Error",
"Disk Full",
"Index Out of Bounds"
};
int howBad[]={3,3,2,4};
//return the error message
public Err getErrorMsg(int index) {
if(index>=0&index<msgs.length) {
return new Err(msgs[index],howBad[index]);
} else {
return new Err("Invalid Error Code",0);
}
}
}
在我的驾驶员课程中,我有
public class Driver {
public static void main(String[]args) {
ErrorDemo err=new ErrorDemo();
Err e;
e=err.getErrorMsg(2);
System.out.println(e.msg+" Severity "+e.severity);
e=err.getErrorMsg(19);
System.out.println(e.msg+" Severity "+e.severity);
}
}
我的问题是,在Driver类中,我们创建了一个新的ErrorDemo对象,然而,Err e;对象不是作为驱动程序中的新对象创建的,而是在ErrorDemo类中创建的。我不明白这里发生了什么,有人能解释一下吗??
Ya问题只是我对这种风格有点反感,我重新格式化了它,使它更可读:)。
public class ErrorDemo {
String msgs[]= {
"OutPut Error",
"Input Error",
"Disk Full",
"Index Out of Bounds"
};
int howBad[]={3,3,2,4};
public Err getErrorMsg(int index) {
Err test=new Err(msgs[index],howBad[index]);
Err invalid=new Err("Invalid Error Code",0);
if(index>=0&index<msgs.length) {
return test;
} else {
return invalid;
}
}
}