java五大原则_Java面向对象的三大特征和五大原则
Java面向對象的三大特征
封裝
封裝(Encapsulation)是指屬性私有化,根據需要提供setter和getter方法來訪問屬性。即隱藏具體屬性和實現細節,僅對外開放接口,控制程序中屬性的訪問級別。
封裝目的:增強數據安全性,不能讓其他用戶隨意訪問和修改數據,和簡化編程,使用者不必在意具體實現細節,而只是通過外部接口即可訪問類的成員。
繼承
繼承(Extend)是指將多個相同的屬性和方法提取出來,新建一個父類
Java中一個類只能繼承一個父類,且只能繼承訪問權限非private的屬性和方法。 子類可以重寫父類中的方法,命名與父類中同名的屬性。
繼承目的:代碼復用。
多態
多態(Polymiorph)可以分為兩種:設計時多態和運行時多態。
設計(編譯)時多態:即重載(Overrload),是指Java允許方法名相同而參數不同(返回值可以相同也可以不相同)。在同一個類中,允許存在一個或一個以上的同名函數,只要參數類型或參數個數不同即可。
運行時多態:即重寫(Override)必須是在繼承體系中,子類重寫父類方法,JVM運行時根據調用該方法的類型決定調用哪個方法。
多態目的:增加代碼的靈活度。
總結歸納
1.Java中應盡量減少繼承關系,以降低耦合度。
2.使用多態時,父類在在調用方法時,優先調用子類的方法。如果子類沒有重寫父類的方法,則再調用父類的方法。
3.Java訪問控飾符作用范圍表:
本類
本包
子類
外部包
public
?
?
?
?
protected
?
?
?
X
default
?
?
X
X
private
?
X
X
X
符號含義, ?:可以訪問 ??X:不可訪問
protected java.lang.Object.clone()方法,在一個類中調用另一個類的clone方法提示 ‘clone()’ has protected access in 'java.lang.Object'
錯誤是因為:另一個類中的clone()方法繼承自Object方法。而這個繼承的clone()方法只能在另一個類中使用。
而當前調用類和另一個類不存在繼承關系,所以不能調用另一個類的clone()方法。
Java面向對象的五大特征
1.單一職責原則:一個類,最好只做一件事,只有一個引起它變化。也就是說每個類應該實現單一的職責,如若不然,就應該把類拆分。
2.開放封閉原則:對擴展開發,對修改封閉。
3.里氏替換原則:子類必須能夠替換其基類。里氏替換原則中說,任何基類可以出現的地方,子類一定可以出現。
4.依賴倒置原則:依賴于抽象接口,不要依賴于具體實現。簡單的說就是要求對抽象進行編程,不要對實現進行編程,這樣就降低了客戶與實現模塊間的耦合。
5.接口隔離原則:使用多個小的專門接口,而不是使用一個大的接口。
總結
以上是生活随笔為你收集整理的java五大原则_Java面向对象的三大特征和五大原则的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 命令 乱码_解决java 命令
- 下一篇: java对象复制到新对象_java –