java面向對象的四大特性:
一. 抽象:把一類事物共有的屬性和行為提出來,形成一個模板。
二. 封裝:把抽象出的數(shù)據(jù)或者對數(shù)據(jù)操作封裝在一起,數(shù)據(jù)被保護在內部,程序的其他部分只有通過被授權的方法才能夠被訪問。
通過一個成員方法控制和訪問私有屬性。
Java中的控制訪問控制修飾符:
?
這里就提出了包和類的觀點,
?
三. 繼承:當多個類出現(xiàn)相同的屬性和行為時,就可以從這些類中抽象出父類,在父類中定義這些相同的屬性和方法,所有的子類不需要重新定義這些屬性和方法,只需要通過extends語句來聲明繼承父類。
?
注意:
在認識多態(tài)之前,先了解方法的重載和方法的重寫(方法的覆蓋)
1. 方法重載:
1) 方法名相同;
2) 方法的參數(shù)類型、個數(shù)、順序至少有一個不同;
3) 方法的返回類型可以不同;
4) 方法的修飾符可以不同。
!!!(如果只是返回類型不同,不能構成重載。)(如果只是修飾符不同,也不能構成重載。)
2. 方法重寫:就是說子類的一個方法和父類的某個方法的名稱、參數(shù)、返回類型一樣。
?
四. 多態(tài):就是一個引用(類型)在不同情況下的多種狀態(tài)。
舉例:
?
在創(chuàng)建對象的時候可以避免總是創(chuàng)建子類對象,父類的對象引用指向子類對象,如:Animal an=new Dog1.
我們使用多態(tài)的時候,創(chuàng)建的是父類的引用,開辟的是子類的空間,由于沒有開辟父類的空間,所以是父類的引用指向子類對象,并不是真正的父類自己創(chuàng)建了對象,而且父類對象的引用還可以作為函數(shù)參數(shù)來接收子類對象哦!
?
人可以喂養(yǎng)狗,狗吃的是骨頭,這里的feed方法為
feed(Animal an,Food f)class Master。
新聞熱點
疑難解答