---------------------- asp.net+android+io開發s、.net培訓、期待與您交流! ----------------------
什麼是多型,可以理解為事物存在的多種體現形態
比如:人:男人,女人
動物:貓,狗
如果貓是動物的一種的話,可以這麼寫
動物 x=new 貓();
abstact class animal //建立乙個抽象父類 animal
class cat extends anamal //貓繼承動物父類
public void catchmouse() }
class dog extends animal //狗繼承動物父類
public void kanjia() }
class duotaidemo
public static void function(animal a)
else if(a instanceof dog)
}}
animal a =new cat();
//型別提公升。把貓提公升為動物,稱為向上轉型
如果想要呼叫貓特有的方法時,如何操作?
強制將父類的引用,轉成子類型別。向下轉型
cat c =(cat)a;
1,多型的基本體現
父類的引用指向了自己的子類物件
父類的引用也可以接受自己的子類物件
2,多型的前提
類與類之間要麼繼承,要麼實現
通常還有乙個前提:存在覆蓋
3,多型的好處
提高**的復用性
4,多型的弊端
提高了擴充套件性,但是只能使用父類的引用訪問父類的成員
多型中成員函式的特點:
在編譯時期,參閱引用型變數所屬的類中是否有呼叫的方法,如果有,編譯通過
在執行時期:參閱的是物件所屬的類中是否有呼叫的方法。
簡單總結就是:成員函式在多型呼叫時,編譯看左邊,執行看右邊
多型中,成員變數的特點:
無論編譯和執行都參考左邊(引用型變數所屬的類)
---------------------- asp.net+android+ios開發、.net培訓、期待與您交流! ----------------------
黑馬程式設計師對於this的一些隨筆
asp.net android io開發s net培訓 期待與您交流!this用在構造器中,當使用不同引數列表的構造器時,如果有構造器和另外乙個構造器的功能一樣,則這個構造器可以呼叫那個構造器的功能使用 格式 this value class test test 空引數的建構函式 test data...
關於程式設計師學習的一些想法
今天打算水一片文章 表達一下關於學習方面的的想法 新技術不斷的出現,幾乎每時每刻都有新技術的出現,而人的一生和精力是有限的,不可能將所有的技術都學完,那麼在每個人學習時間都相同的條件下,技術的高低也就是取決於學習效率了。或者說為什麼別人學的快,自己學到慢。在丟擲腦子方面的影響因素,其實大部分都取決與...
黑馬程式設計師 學習筆記11 多型
windows phone 7手機開發 net培訓 期待與您交流!多型 是一種抽象的概念,是乙個物件可以有多種表現形式!而對於多型怎麼去實現 1 過載與隱藏基類 2 抽象類與虛方法 倆者的區別是乙個需要去實現,乙個不需要自己去實現由子類去例項化 3 介面 介面是一種約定,物件的特徵或行為,對於乙個集...