面向對象簡稱OOP(object oriented programming)
簡述java面向對象三大精髓(封裝,繼承,多態(tài))
封裝:
為什么要封裝,封裝的好處和作用在哪?
java是出了名的安全性高,因此java的安全性就體現(xiàn)在這里。
1)數(shù)據(jù)的封裝:
將所有的屬性私有化,暴露共有的get()和set()方法,get()方法有返回值無參數(shù),set()方法無返回值有參數(shù)。
2)過程的封裝:
將相同的代碼封裝到一個方法里面,方便調用和維護,并且可以重復使用。
繼承(extends):
1)子類繼承父類,可以繼承父類非私有化方法和成員變量,不能繼承構造方法
2)子類繼承抽象類,必須重寫父類的所有抽象方法,如果子類不重寫,那么必須讓自己變成抽象類
多態(tài):
封裝和繼承幾乎是為多態(tài)做準備的,多態(tài)必須重寫,繼承和父類引用指向子類對象。
重寫:方法名相同,參數(shù)列表相同,返回值相同,子類訪問修飾符必須大于等于父類修飾符,子類拋出的異常不能比父類大。補充:子類不能重寫父類的final和static方法
重載:方法名相同,參數(shù)列表不同,與返回值修飾符和異常都無關。
父類引用指向子類的對象:
父類名? 對象名稱 = new 子類名/構造方法()