//多态的弊端:不能使用子类特有功能
//那怎么使用子类特有功能呢?
zi z=(zi)f;//吧父类的引用强制转换成子类的引用(向下转型)
//向上转型:
fu f=new zi();
//向下转型
zi z=(zi)f;
//栗子:孔子装爹(这个例子是我从公开课上扒来的,是APP上看的,没找到网址,但是要说一下)
class kongziFather{
int age=40;
public void teach() {
System.out.println("孔子爹会讲java基础");
}
}
class kongzi extends kongziFather{
int age=20;
public void teach() {
System.out.println("孔子会讲论语");
}
public void palyGame() {
System.out.println("孔子玩王者荣耀");
}
}
public class 多态的成员访问特点及转型 {
public static void main(String[] args) {
//Java培训特别火,很多人来请孔子爹去进课。这一天孔子爹被请走了
//但是还有人来请就剩孔子在家.价格还挺高。孔子一想。我是不是可以考虑去呢?
//然后就穿上爹的衣服带上爹的眼睛,粘上爹的胡子。就开始装釜
//向上转型
kongziFather kd= new kongzi();
//到人家那里去了
System. out. println(kd.age); //40
kd.teach(); //进解论语
//kd.playGame(); //这是儿子才能做的
//进完。下班回家工
//脱下爹的装备,换上自己的装备
//向下转型,
kongzi k= (kongzi) kd;
System. out.println(k.age); //20
k.teach(); //进解论语
k.palyGame(); //英雄联盟
}
}