Java异常机制---异常的产生与处理

为什么会产生异常,异常的分类

/**
 * 测试java异常处理机制
 * java异常处理的根基类为Throwable,存在两个子类Error和
 * Exception(Checked Exception(必须捕获进行处理) ; 
 * Unchecked Exception(Runtime Exception(java运行时异常)(java虚拟机正常运行时抛出异常的超类)));
 * 程序员需要处理的异常类型为Exception,Checked必须捕获处理;而Unchecked由于发生频率高,JRE会自动捕获.
 * @author Administrator
 *
 */
public class TestException01 {
	public static void main(String[] args) {
	//	int i = 1/0;
		//编译通过,虚拟机运行时抛出java.lang.ArithmeticException: / by zero异常,Unchecked Exception
		
		Computer c = null;
		c.start();
		//java.lang.NullPointerException  空指针异常   Unchecked Exception
		//对象为空,调用了对象的方法或属性
		//处理:判断  if(c!=null),再调用
		
		//ClassCastException 类型转化异常
		//处理
		Man man = new Man();
		Object obj = "测试类型转化异常的处理方法";
		man.run(obj);
		if(obj instanceof Man){
			Man man1 = (Man) obj;
		}
		
	}
}

class Computer{
	public void start(){
		System.out.println("启动");
	}
}

class Man{
	String eye;
	public void run(Object obj ){
		System.out.println("running'");
	}
}

你可能感兴趣的:(面向对象总结)