再次的解析异常
当程序中输入了非法(不合适的数据)解决办法
如果使用输出语句,显示错误,并且使用return使相应的函数结束执行,但从本质上讲,这个语句是没有错误的,整个程序还是会从可以执行的地方继续执行
但是是用异常就不一样,抛出异常后,也会显示错误,整个程序会在异常出现或者是返回的地方直接结束整个程序
package Exception;
class Dog{
private int age;
private String name;
Dog(String name,int age){
if(age<0||age>200){
/* System.out.println("输入年龄不合法!!");
return ;//运行结果:输入年龄不合法!!Dog[name=null age =0]
这样的解决方法虽然完成了信息的显示,同时也结束了函数,但程序依然会继续执行,从本质上这个对象是被创建初始化完成了的——这就违背了程序的本意
此时就要使用异常
*/
throw new IllegalArgumentException("传入的年龄不合法!!!");
//运行结果
}
this.age=age;
this.name=name;
}
public String toString(){
return "Dog[name="+name+" age ="+age+"] ";
}
}
public class Example1 {
public static void main(String[] args){
Dog D= new Dog("Lili",-5);//传入非法的参数(年龄)
System.out.println(D);//输出语句会自动的调用toString 函数
//System.out.println(D.toString());
}
同时大多数时候在输入时就会进行数据的判断
关于找异常,可以在Java的API文档中找