物件導向的程式語言有封裝、繼承 、抽象、多型4個主要的特徵。
物件導向程式設計有三大特性:封裝、繼承、多型。
1. 封裝: 封裝是保證軟體部件具有優良的模組性的基礎,封裝的目標就是要實現軟體部件的「高內聚、低耦合」,防止程式相互依賴性而帶來的變動影響。在物件導向的程式語言中,物件是封裝的最基本單位,物件導向的封裝比傳統語言的封裝更為清晰、更為有力。物件導向的封裝就是把描述乙個物件的屬性和行為的**封裝在乙個「模組」中,也就是乙個類中,屬性用變數定義,行為用方法進行定義,方法可以直接訪問同乙個物件中的屬性。通常情況下,只要記住讓變數和訪問這個變數的方法放在一起,將乙個類中的成員變數全部定義成私有的,只有這個類自己的方法才可以訪問到這些成員變數,這就基本上實現物件的封裝,就很容易找出要分配到這個類上的方法了,就基本上算是會物件導向的程式設計了。把握乙個原則:把對同一事物進行操作的方法和相關的方法放在同乙個類中,把方法和它操作的資料放在同乙個類中。
2. 抽象: 抽象就是找出一些事物的相似和共性之處,然後將這些事物歸為乙個類,這個類只考慮這些事物的相似和共性之處,並且會忽略與當前主題和目標無關的那些方面,將注意力集中在與當前目標有關的方面。例如,看到乙隻螞蟻和大象,你能夠想象出它們的相同之處,那就是抽象。抽象包括行為抽象和狀態抽象兩個方面。例如,定義乙個person類,
如下: class person 人本來是很複雜的事物,有很多方面,但因為當前系統只需要了解人的姓名和年齡,所以上面定義的類中只包含姓名和年齡這兩個屬性,這就是一種抽像,使用抽象可以避免考慮一些與目標無關的細節。我對抽象的理解就是不要用顯微鏡去看乙個事物的所有方面,這樣涉及的內容就太多了,而是要善於劃分問題的邊界,當前系統需要什麼,就只考慮什麼。
3. 繼承: 在定義和實現乙個類的時候,可以在乙個已經存在的類的基礎之上來進行,把這個已經存在的類所定義的內容作為自己的內容,並可以加入若干新的內容,或修改原來的方法使之更適合特殊的需要,這就是繼承。繼承是子類自動共享父類資料和方法的機制,這是類之間的一種關係,提高了軟體的可重用性和可擴充套件性。
4.多型:
多型是指程式中定義的引用變數所指向的具體型別和通過該引用變數發出的方法呼叫在程式設計時並不確定,而是在程式執行期間才確定,即乙個引用變數倒底會指向哪個類的例項物件,該引用變數發出的方法呼叫到底是哪個類中實現的方法,必須在由程式執行期間才能決定。因為在程式執行時才確定具體的類,這樣,不用修改源程式**,就可以讓引用變數繫結到各種不同的類實現上,從而導致該引用呼叫的具體方法隨之改變,即不修改程式**就可以改變程式執行時所繫結的具體**,讓程式可以選擇多個執行狀態,這就是多型性。多型性增強了軟體的靈活性和擴充套件性
例如 person p1 = teather, person p2 = student; 這樣想p1 or p2 變數傳送同乙個方法時,結果不同。
OC物件導向
oc物件導向 1 自定義建構函式 意義 在建立乙個物件的同時,為這個物件賦乙個初值 目的 傳參 注意 1 initwith w 一定要大些 2 如果沒有使用initwith或者w小寫,系統不認為它是乙個建構函式 2 oc函式 方法 1 不需要傳參的公式 返回值型別 方法名 2 需要傳參的函式 寫帶引...
OC 物件導向
類與物件 一.類 1.eg inte ce student nsobject 特徵大括號編寫 行為大括號編寫 end 敘述 1 inte ce介面檔案是乙個類的開始 2 student是當前的類名 3 nsobject是類繼承的父類 4 類的執行到 end結束 注釋 檔名與類名是沒有任何關係的,但是...
OC 物件導向
建立乙個類 comm n 例項變數的可見度 public,protect private public 共有的,在類的內部和外部都可以進行訪問 protected 受保護的,在類的內部和子類中可以進行訪問,例項變數預設是受保護的 private 私有的,只能在類的內部進行訪問,子類中也不可以訪問 o...