Java的抽象和介面

2021-07-09 14:10:49 字數 1425 閱讀 7336

抽象類不一定有抽象方法,但有抽象方法的類一定是抽象類或者是介面;

抽象類無法進行例項化;(根據多型的方式,有具體的子類進行例項化)

抽象類的子類:

要麼是抽象類;要麼重寫抽象類中的所有抽象方法

抽象類的成員特點:

1、成員變數:既可以是變數,也可以是常量。abstract不能修飾成員變數。

2、構造方法:有。

3、成員方法:既可以是抽象的,也可以是非抽象的。

為什麼要用抽象類?抽象方法?

強制子類對抽象方法進行重寫。

將乙個類定義成抽象類的意義是目的?

不讓其他類建立本類物件,交給子類完成。

abstract不能和哪些關鍵字共存?

介面:

介面不能被例項化。

介面中的變數都是常量、靜態、公開的。(例如:static public final int num=10;)

介面中沒有構造方法,介面中的成員方法都是抽象的

public class run 

}inte***ce inter

class demo /*extends object*/ implements inter

public void print()

public void print2()

}

類與類,類與介面,介面與介面之間的關係:類與類:只能單繼承,可以多層繼承類與介面:實現關係,可以單實現,也可以多實現。並且還可以在繼承乙個類的同時實現多個介面介面與介面:繼承關係,可以單繼承,也可以多繼承

package inte***ce2;

public class run

}inte***ce inter1

inte***ce inter2

inte***ce inter3 extends inter1,inter2

class demo /*extends object*/ implements inter1,inter2

public void print2()

}

抽象類與介面的區別:

抽象類:成員變數:可以變數,也可以常量

成員方法:可以抽象也可以非抽象

構造方法:有

介面:成員變數:只可以是常量

成員方法:只可以是抽象的

Java 介面和抽象類

介面,inte ce,介面泛指供別人呼叫的方法和函式。介面的形式 public inte ce inte cename 介面的特點 1 介面中可以含有變數和方法。2 其中變數被隱式的指定為public static final 變數並且只能是這種變數。3 介面的方法隱式的指定為public abst...

java抽象類和介面

抽象類 乙個類中只要有乙個抽象方法 那麼這個類就必須是抽像的 抽象類必須要進行例項化 public abstract class animal class cat extends animal 介面 從本質上講介面是一種特殊的抽象類 介面中所有的方法都是抽象的 並且介面中的成員都是public 介面...

Java抽象類和介面

含有abstract修飾符的class即為抽象類,abstract類不能建立的例項物件。含有abstract方法的類必須定義為abstract class,abstract class類中的方法不必是抽象的。abstract class 類中定義抽象方法必須在具體 concrete 子類中實現,所以...