深入理解向上和向下造型

向上造型:父类引用指向子类对象

注:调用时看引用类型,并不能调用子类的,变量和子类没有涉及重写的方法,

向下造型:子类引用指向父类对象

public class test {
	public static void main(String[] args) {
		Aoo aoo=new Boo();//向上造型自动类型转换
		Boo o1=(Boo)aoo;//引用aoo所指向的对象,强转为Boo类型
		Inter1 o2=o1;//引用o1所指向的对象
		if(aoo instanceof Coo) {//强转时用instanceof判断,避免出错
			Coo o3=(Coo)aoo;//false
		}
	}
}
interface Inter1{
	
}
class Aoo{
	
}
class Boo extends Aoo implements Inter1{
	
}
class Coo extends Aoo{
	
}

你可能感兴趣的:(Java编程小知识)