黑馬程式設計師 物件導向之封裝 繼承 多型

2021-06-20 22:49:18 字數 2016 閱讀 9214

黑馬程式設計師—物件導向之封裝、繼承、多型

---------------------- asp.net+unity開發、.net培訓、期待與您交流! ----------------------

剛開始接觸物件導向的時候,確實對於封裝、繼承、多型了解不多,而且還相當困惑;不過,通過自己的學習,再結合高手的意見和方法,對類、屬性、構造方法、抽象類、抽象方法、虛方法與封裝、繼承多型之間的關係也有所了解。

封裝:在學習面向過程的時候,習慣了那種從頭一句一句寫到尾的過程,到了物件導向接觸了類、屬性和字段,也就漸漸明白:物件導向就是對面向過程的封裝。比如說:

class program

,今年歲,身高厘公尺",p1.name,p1.age,p1.height);

console.readkey();}}

class person

//字段:public 型別¨ 字段

public int age;

public int height;

//方法:訪問修飾符 static 返回值 方法名()

//方法是對過程的封裝,我們把復用的**都寫在方法裡,就是要達到//封裝的目的

public void sayhello()}}

}從類、屬性、方法都可以體現物件導向的封裝性。

繼承:就好像兒子繼承父親的特性一樣。在繼承中,父類有的字段、屬性、方法、構造方法等,子類都可以繼承使用,也就是說,我們父類的非私有成員都被子類繼承過來,並且也可以對這些成員進行擴充套件,子類自己也可以定義自己的成員,不過我們類中只能有乙個父類,且都可以被他的子類繼承,也就是像現實中,我們只有乙個父親,但父親可以有多個孩子一樣。(所有的類都**於object類,就算只有乙個類也一樣;繼承是具有傳遞性的。)

還是看例子:

class program

}class person //定義乙個類,被繼承的類,父類。

string name;

public string name//屬性

int age;

public int age//屬性

public void sayhello() //定義乙個方法

,今年歲!」,name,age);}}

class teacher:person //在定義乙個類,這個類繼承與person類,為繼//承類,子類。

public void sayhello() //定義乙個方法

,今年歲!」,name,age);

}多型:對於多型,其實也不是很難理解,乙個動作,不同的結果,就好像在你床頭上有個按鈕,剛開始你不清楚,按那個按鈕是讓她亮燈還是開風扇;主程式程式設計的時候,使用父類進行程式設計,具體的實現有子類來實現。不過要實現多型也並不簡單,說到父類子類,那至少需要繼承吧,而且還得要有子類與父類有同名的、同引數的、完全相同的方法。

例如:class program

}class person//父類

private string name;

public string name

set

}private char gender;

public char gender

set

}private int age;

public int age

set

}//speak方法,加有virtual就成了虛方法

public virtual void speak()

}class teacher:person//繼承person父類

//都是speak方法,但效果與父類的不一樣,實現了多型

public override void speak()

}class student : person//繼承person父類

//都是speak方法,但效果與父類的不一樣,實現了多型

public override void speak()

}---------------------- asp.net+unity開發、.net培訓、期待與您交流! ----------------------

黑馬程式設計師 物件導向

物件導向 1 物件導向 是基於面向過程的一種思想。面向過程 以函式為基礎,關注實現過程。物件導向 以物件為基礎,關注實現結果。2 物件導向的思想特點 a 是一種更符合人們思考習慣的思想。b 把複雜的事情簡單化了。c 把我們從執行者變成了指揮者。舉例 買電腦。洗衣,做飯。旅遊。把大象裝進冰箱。體現 c...

黑馬程式設計師 物件導向

物件導向是一種思想,把複雜事物簡單化,把面向過程的執行者變成了指揮者。過程其實就是函式,而物件將函式和一些內容封裝。把事物的屬性和行為封裝成物件,再把物件抽象成類。類的訪問修飾符有public和final。而成員的修飾符有public private protected static 成員變數和區域...

黑馬程式設計師 物件導向思想

物件導向的思想 誰有資料,誰就對外提供操作這些資料的方法。例子1 人在黑板畫圓 public class circle private int radius 1 public circle circlecenter,radius public void draw int circlecenter,i...