在學(xué)習(xí)Java中有各種各樣的“類”來(lái)供我們學(xué)習(xí),今天UP主為大家介紹八種使用較為廣泛的“類”知識(shí)點(diǎn):
? ? ? ?1.包裝類
? ? ? ?2.String類
? ? ? ?3.StringBuffer和StringBuilder類
? ? ? ?4.Date類和DateFormat類
? ? ? ?5.Calendar類
? ? ? ?6.JDK8的日期類
? ? ? ?7.Math類和Random類
? ? ? ?8.枚舉
七大設(shè)計(jì)原則
1.開(kāi)閉原則(OpenClose Principle/OCP)
定義:一個(gè)類、模塊和函數(shù)應(yīng)該對(duì)擴(kuò)展開(kāi)放,對(duì)修改關(guān)閉。
2.單一職責(zé)原則(SRP)-Single Responsibility Principle
單一職責(zé)原則規(guī)定一個(gè)類應(yīng)該有且僅有一個(gè)引起它變化的原因,否則類應(yīng)該被拆分。
3.里氏代換原則(LiskovSubstitution Principle/LSP
定義:所有引用基類(父類)的地方必須能透明地使用其子類的對(duì)象。通俗講:子類可以擴(kuò)展父類的功能,但不能改變父類原有的功能。
4.依賴倒轉(zhuǎn)原則(Dependence Inversion Principle)
針對(duì)接口編程,抽象不依賴干細(xì)節(jié),細(xì)節(jié)應(yīng)依賴于抽象
多數(shù)情況下,開(kāi)閉原則,里氏替換原則,依賴倒轉(zhuǎn)原則會(huì)同時(shí)出現(xiàn)開(kāi)閉原則是目標(biāo),里氏替換原則是基礎(chǔ),依賴倒轉(zhuǎn)是手段。
5.隔離原則(Interface Segregation Principle)
使用多個(gè)專門的接口,不使用單一的總接口
當(dāng)一個(gè)接口太大時(shí),我們需要把他拆分成小的接口,但不能違反單一職責(zé)原則,每個(gè)接口應(yīng)該承擔(dān)一種相對(duì)獨(dú)立的角色,不該干的事情不干,該干的事情都要干。
6.迪米特法則(LawOf Demeter)
一個(gè)實(shí)體應(yīng)當(dāng)盡量少的與其他實(shí)體發(fā)生相互作用
應(yīng)該盡量減少對(duì)象之間的交互。如果兩個(gè)對(duì)象之間不必彼此直接通信,那么這兩個(gè)對(duì)象就不應(yīng)當(dāng)發(fā)生任何直接的相互作用,如果其中的一個(gè)對(duì)象需要調(diào)用另一個(gè)對(duì)象的某一個(gè)方法的話,可以通過(guò)第三者轉(zhuǎn)發(fā)這個(gè)調(diào)用。
7.合成復(fù)用原則(Composite Reuse Principle)
-盡量使用組合而非繼承
就是在一個(gè)新的對(duì)象里面使用一些已有的對(duì)象,使之成為新對(duì)象的一部分,新的對(duì)象通過(guò)這些對(duì)象的委派達(dá)到復(fù)用已有功能的目的