java 抽象類與介面 note
阿新 • • 發佈:2019-01-06
抽象類(修飾符abstract)
兩種類:具體類和抽象類
抽象方法:設計目的就是讓子類來實現。子類繼承了抽象父類,如果沒有實現抽象父類,那麼子類還是一個抽象子類。否則子類一定要實現抽象父類裡的抽象方法,成為具體類。
如果一個方法被宣告為抽象類,則這個類必須宣告為抽象的。
在抽象類裡不能具體化抽象抽象方法。
在抽象類的具體方法裡可以呼叫抽象方法。
抽象方法只能有方法宣告,不能有方法的實現。
在一個抽象類裡,可以有多個抽象方法,和多個具體方法。
抽象類不能被例項化,只有具體類才能被例項化。
UML類圖裡:類的圖示是C, 介面圖示是I 。
抽象類通過子類實現抽象方法,extends。
介面通過子類實現介面方法,implements
介面(修飾符interface)
介面比抽象類更加抽象。介面可以繼承介面。
介面中不能有非靜態變數,因為介面不能被例項化。介面中只能有靜態成員常量。
實現介面時,要實現介面中宣告的所有方法。
package src.test;
public interface Figure {
String name = " 幾何圖形“; //省略了public static final
void onDraw(); //省略了public abstract void onDraw()
}
package src.test.imp;
import src.test.Figure;
public class Triangle implements Figure {
@override
public void onDraw() {
System.out.println("繪製三角形...");
}
}