物件導向的幾個基本概念:
1. 類,巨集觀上可以理解為一種資料型別,跟int,double,string之類的沒有多大區別,不同之處在於,類是根據實際的需求自己定義的一種較為龐大的資料型別,而int之類的為系統內建的資料型別;
2. 物件,物件的概念是針對於類的概念來說的,站在抽象的角度上,類是一種概念性的定義,類描述了一組具有相同特性和相同行為的物件,而物件是類的具體化,是具有類所描述的所有屬性和方法的實體,e.g. int a,a和int的關係,就相當於物件和類的關係,只不過,類這種資料型別要複雜的多;
3. 屬性和方法,這兩者共同構成了類,屬性,顧名思義,是類包含的某些特性,方法,則是類的某些行為。舉例來說,我們將人看做乙個類,人具有身高,體重,膚色等等特性,這些就是人類的屬性值,而人還可以睡覺,吃飯,運動,這些行為就是人類的方法;
4. pirvate,public,protected,均指的是屬性或者方法的一種狀態,還如上述的例子,個人的資訊如身高體重等等,這些是私人資訊,所以一般是private,而睡覺,吃飯,運動這些行為通常大家都了解,所以一般為public。為了實現資料的封裝,提高資料的安全性,引用別人的一句話「物件調方法,方法改屬性」。對應到類中,即類的屬性一般為私有的private,而類的方法一般為公有的public,而projected,一般用於繼承之中,後續再論。
5. 記憶體分配,當建立多個物件時,系統會為每個物件的屬性分配特有記憶體,而無論創造多少個物件,計算機只為乙個方法分配乙個記憶體;
6. 建構函式,對物件的屬性進行初始化,建構函式的特點:無返回型別,名稱與類相同,public,建立時自動呼叫,接受過載。
7. 預設建構函式,系統自動建立預設建構函式,但是最好自己寫建構函式;
8. 過載建構函式,傳遞引數給物件,使得物件在初始化的時候具有特定的值,避免多個物件被建立時屬性擁有相同的初始化值;
9. 過載,函式名相同,引數型別,引數數量,函式返回值都不相同,以此來區分函式的功能,便於接受各種不同的引數呼叫。
參考blog:
面相物件 面相過程
oc是物件導向 c面向過程 區別 面向過程 關注解決問題需要的步驟 物件導向 關注解決問題需要的物體 術語 面向過程 procedure oriented 物件導向 object oriented 物件導向程式設計 object oriented programming 類 物件 成員變數 區別 類...
面相物件基礎
1.方法的重寫 1 發生在父子類中,方法名相同引數列表相同,為方法的重寫。2 重寫的方法被呼叫的時候看物件的型別。注意事項 重寫需要遵循 兩同,兩小,一大的原則 1 兩同 方法名稱相同,引數列表相同 2 兩小 基本資料型別的方法的返回值必須相同。引用資料型別可以小於或者等於父類的資料型別。子類方法中...
面相物件,關於物件
1 萬物皆物件。將物件看做是乙個特別的變數,它是乙個可以儲存資料的東西,除此之外,你還可以要求它在自身上進行操作。理論上而言,萬物皆物件,可以抽取待求解的任何概念化構件,例如貓 狗 建築物 衣服等等。我們可以將他們表示成為程式中的物件。2 程式是物件的集合,他們通過傳送訊息來告知彼此所需要做的。要想...