instanceof的用法
公式:
//能不能编译通过
System.out.println(X instanceof Y);
例1:
1.能否编译通过,看X与Y的类,若纯真父子或者子父关系则可以通过
2.若X与Y没有父子关系,如Teacher与Student,就不可编译
3.编译过后T/F看引用指向对象,X指向的对象如果是后面Y的子类或是本身,即使T
instanceof判断后类型转换
例2:
小结:
1.父类的引用指向子类的对象
2.把子类转换为父类,向上转型
3.把父类转换为子类,向下转型,强制转换
4.子类转换父类,可能丢失自己本来的一些方法
5.方便方法的调用建设重复代码
(其中小结的2、3、4在例2中展现)