1.面向對象的三大特性 繼承、封裝、多態 什么是繼承? ①繼承是面向對象程序設計能夠提高軟件開發效率的重要原因之一。 ②繼承是具有傳遞性的,就像現實中孫子不僅長得像爸爸而且還像他爺爺。 ③繼承來的屬性和方法是隱式的,也就是在本類里面是看不見的。 ④一個類只能有一個父類,也就是類只能是單繼承。 ⑤一個接口可以有多個父類,也就是接口可以是多繼承。 實際項目開發中,一個類繼承於另一個類,那么前者就是后者的子類,反則反之。 什么是封裝? 對象數據和操作該對象的指令都是對象自身的一部分,能夠實現盡可能對外部隱藏數據。 實際項目開發中,使用封裝最多的就是實體類,常常和JavaBean(類必須是具體的和公共的,並且具有無參數的構造器)一起使用。 那么,實體類有那些東西呢? 答:私有的成員變量、無參數的構造器、有參數的構造器、setter和getters方法、重寫tostring方法、重寫hashCode和equals方法。 什么是多態? ①多態就是對象擁有多種形態:引用多態和方法多態。 ②引用多態:父類的引用可以指向本類對象、父類的引用可以指向子類的對象。 ③方法多態:創建本類對象時,調用的方法為本類的方法;創建子類對象時,調用的方法為子類重寫的方法或者繼承的方法。 ④存在多態的必要條件:繼承、重寫。 ⑤多態的作用是消除類型之間的耦合關系。 在實際項目開發中,A類繼承B類,如果在A類中不重寫B類的方法的時候,輸出的仍舊是B類方法里面的信息(B b=new A());如果在A類中重寫B類的方法的時候,輸出的是A類方法里面的信息(B b=new A())。
