多态的成員通路特點及轉型了解
class 孔子爹 {
public int age = 40;
public void teach() {
System.out.println("講解JavaSE");
}
}
class 孔子 extends 孔子爹 {
public int age = 20;
System.out.println("講解論語");
public void playGame() {
System.out.println("英雄聯盟");
//Java教育訓練特别火,很多人來請孔子爹去講課,這一天孔子爹被請走了。
//但是還有人來請,就剩孔子在家,價格還挺高。孔子一想,我是不是可以考慮去呢?
//然後就穿上爹的衣服,帶上爹的眼睛,粘上爹的胡子。就開始裝爹。
//其實就是向上轉型
孔子爹 k爹 = new 孔子();
//到人家那裡去了。
System.out.println(k爹.age); //40
k爹.teach(); //講解論語(講解JavaSE前先講論語)
//k爹.playGame(); //這是兒子才能做的(不能做,做了就露餡了。)
//講完了,下班回家了。
//脫下爹的裝備,換上自己的裝備。
//其實就是向下轉型
孔子 k = (孔子)k爹;
System.out.println(k.age); //20
k.teach(); //講解論語
k.playGame(); //英雄聯盟
Copyright ©2018-2019
【轉載文章務必保留出處和署名,謝謝!】