①ClassCastException
②错误:不兼容的类型
这两有什么区别?如何判断何种情况下跑出哪一个呢?
既然是Exception,编译的时候肯定发现不了啦。
只能程序跑的的时候抛出。
一般都是因为使用父类或者接口类型做变量的类型的时候在进行转型时候发生
例如 Object obj = factory.createString()
在应用的时候却用 Integer it = (Integer)obj
②错误:不兼容的类型
首先编译的时候可以发现这个错误的信息
至于运行的时候,一般是①ClassCastException