abstract(抽象)修飾符,可以修飾類和方法1,abstract修飾類,會使這個類成為乙個抽象類,這個類將不能生成物件例項,但可以做為物件變數宣告的型別,也就是編譯時型別,抽象類就像當於一類的半成品,需要子類繼承並覆蓋其中的抽象方法。
2,abstract修飾方法,會使這個方法變成抽象方法,也就是只有宣告(定義)而沒有實現,實現部分以";"代替。需要子類繼承實現(覆蓋)。
注意:有抽象方法的類一定是抽象類。但是抽象類中不一定都是抽象方法,也可以全是具體方法。
abstract修飾符在修飾類時必須放在類名前。
abstract修飾方法就是要求其子類覆蓋(實現)這個方法。呼叫時可以以多型方式呼叫子類覆蓋(實現)後的方法,也就是說抽象方法必須在其子類中實現,除非子類本身也是抽象類。
注意:父類是抽象類,其中有抽象方法,那麼子類繼承父類,並把父類中的所有抽象方法都實現(覆蓋)了,子類才有建立物件的例項的能力,否則子類也必須是抽象類。抽象類中可以有構造方法,是子類在構造子類物件時需要呼叫的父類(抽象類)的構造方法。
舉個簡單的例子下面有乙個抽象類
abstract class e
然後其它類如果繼承它通常為了實現它裡面的方法
class f extends e
}最後再主方法裡面定義乙個父類引用指向子類物件,就會發生多型現象,比如
e e=new f();
e.show();
實際呼叫了子類裡面的show()方法
java修飾符 abstract 修飾符
abstract 修飾符 abstract 修飾符可以用來修飾類和成員方法 用 abstract 修飾的類表示抽象類,抽象類位於繼承樹的抽象層,抽象類不能被例項化,即不允許建立抽象類本身的例項。沒有用 abstract 修飾的類稱為具體類,具體類可以被例項化。用 abstract 修飾的方法表示抽象...
java修飾符五 abstract 修飾符
7.abstract 修飾符 abstract 修飾符可以用來修飾類和成員方法 用 abstract 修飾的類表示抽象類,抽象類位於繼承樹的抽象層,抽象類不能被例項化,即不允許建立抽象類本身的例項。沒有用 abstract 修飾的類稱為具體類,具體類可以被例項化。用 abstract 修飾的方法表示...
final修飾符和abstract修飾符
用final修飾的類無法被繼承 用final修飾的方法可以被繼承但是不能被重寫 用final修飾的變數表示常量,只能賦值一次 abstract修飾符可以修飾方法也可以修飾類,如果修飾方法,那麼這個方法就是抽象方法,如果修飾類,那麼就是抽象類。抽象類中可以沒有抽象方法,但是如果有乙個類中有抽象方法,那...