物件導向是新一代的程式開發模式,模擬現實世界的事物,把軟體系統抽象成各種物件的集合,以物件為最小單位。物件就是客觀世界中存在的人,事,物體等實體。物件就是符合某種類定義所產生出的例項(如:狗、貓,老虎等屬於動物類)。在物件導向程式設計中,使用屬性來描述物件的形態,使用方法來處理物件的行為。
1. 封裝性
將物件的屬性和方法封裝起來,是使用者知道並使用物件的方法和屬性而不需要知道其內部的實現過程,例如,手機撥打**。
採用封裝的原則可以使物件以外的部分不能隨意訪問物件內部的資料,有效的避免了外部錯誤對內部資料的影響,實現錯誤區域性化。同時,提高了程式的可維護性,可以對成員變數進行更精確的控制。例如
public
class
husband
public
void
setage(int age) else
} /** 省略其他屬性的setter、getter **/
}
對其的使用
husband husband = new husband();
husband.age = 30
; husband.name = "張三"
; husband.*** = "男"
;
2.繼承性
子類繼承父類,乙個類獲取了另外乙個類的全部方法,並且對這些方法進行自主的支配。在這裡,被別人繼承的類,我們叫父類,也叫超類或者基類。而繼承了父類的類呢,就叫子類,也叫派生類。當我們在繼承乙個父類的時候,可以根據實際需要對父類中的方法進行重寫,從而獲取實際所需要的實現步驟。同時,也可以在父類方法的基礎上進行擴充
**父類**
public
class animal
public
void
sleep()
}
當我們在繼承乙個父類的時候,可以根據實際需要對父類中的方法進行重寫,從而獲取實際所需要的實現步驟。同時,也可以在父類方法的基礎上進行擴充
**子類**
public
class
rabbit
extends
animal
}public
class
tiger
extends
animal
/*方法的擴充*/
public
void
run()
public
void
showinfo()
}
**執行結果**
這是乙隻老虎,它的超類是動物類,超類的eat方法的結果是:
動物會吃東西。。。
這是乙隻老虎,它的的eat方法的結果是:
老虎吃肉。。。
老虎飛快的跑
要注意的是:子類必須實現父類所有的屬性或方法,就是說:如果子類不對父類的方法進行重寫,那麼父類的方法也會在子類被載入的時候執行。而如果子類重寫了方法之後,就只會載入重寫後的方法
子類只能夠繼承父類中被宣告為public和protected的成員變數和成員方法,但不能繼承private修飾的;如果子類宣告了乙個與父類同名的成員變數,則父類的成員變數會被子類隱藏,這是用 super 關鍵字呼叫父類被隱藏的方法和成員變數
3.多型性
通常使用方法的過載和覆蓋來實現類的多樣性。方法的過載是指在乙個類中,出現多個方法名相同,但引數個數或型別不同的方法。
方法的過載
定義乙個calcuate 的類
public
class calcuate
//求矩形的面積
public
float
getarea(float x,float y)
對其的實現
public
class calculatetest
}
過載的方法之間不一定必須有聯絡,但為了提高程式的可讀性,一般只過載功能相似的方法。
方法的覆蓋
當子類繼承父類,如果子類的方法名與父類的方法名相同,那麼子類就不能繼承父類的方法,此時,稱子類的方法覆蓋了父類的方法。通過覆蓋,可以使乙個方法在不同的類中表現出不同的行為。
Java基礎》28 物件導向》物件導向思想概述
僅供自己記錄學習,無它用,歡迎指導!面向過程 當需要實現乙個功能的時候,每乙個具體的步驟都要親力親為,詳細處理每乙個細節 物件導向 當需要實現乙個功能的時候,不關心具體的步驟,而是找乙個已經具有該功能的人,來幫我做事兒 類與物件的關係 類是對一類事物的描述,是抽象的 物件是一類事物的例項,是具體的 ...
Java物件導向 封裝的概述
一 封裝的概述 是指隱藏物件的屬性和實現細節,僅對外提供公共訪問方式 1.好處 隱藏實現細節,提供公共的訪問方式 提高了 的復用性 提高安全性 2.封裝原則 將不需要對外提供的內容都隱藏起來 把屬性隱藏起來,提供公共方法對其訪問 二 如何去理解隱藏和提高安全性呢?通過乙個例子 class stude...
JAVA基礎(物件導向思想概述)
1,什麼是面向過程 假設你要吃糖醋里脊 第一步 學習炒菜技術,第二步 買材料,肉,菜 第三步 開始炒菜 第四步 吃 第五步 收拾 2,什麼是物件導向 假設你要吃糖醋里脊 第一步 找媽媽 找物件 第二步 媽媽給炒菜 第三步 拿到糖醋里脊吃 3,物件導向思想特點 思想特點 物件導向開發 就是不斷的建立物...