『壹』 java中的abstract方法和abstract類的問題
abstract修飾符用來來修飾類和成員方法源
1:用abstract修飾的類表示抽象類,抽象類位於繼承樹的抽象層,抽象類不能被實例化。
2:用abstract修飾的方法表示抽象方法,抽象方法沒有方法體。抽象方法用來描述系統具有什麼功能,但不提供具體的實現。
abstract 規則:
1:抽象類可以沒有抽象方法,但是有抽象方法的類必須定義為抽象類,如果一個子類繼承一個抽象類,子類沒有實現父類的所有抽象方法,那麼子類也要定義為抽象類,否則的話編譯會出錯的。
2:抽象類沒有構造方法,也沒有抽象靜態方法。但是可以有非抽象的構造方法
3:抽象類不能被實例化,但是可以創建一個引用變數,類型是一個抽象類,並讓它引用非抽象類的子類的一個實例
4:不能用final 修飾符修飾
希望能幫到你
『貳』 JAVA中abstract
2是對的
抽象類中可以沒有抽象的方法,只是抽象類不能實例化。
但是一旦一個類中有抽象方法,所在class必定要是class,否則會有編譯錯誤
『叄』 java中abstract方法的格式是什麼
抽象成員方法的定義格式為:
【方法修飾詞列表】 返回類型 方法名(方法的參數列表)內;
其中,方法修容飾詞列表含有關鍵字abstract。
如果方法修飾詞列表還含有其他方法修飾詞,則在相鄰方法修飾詞之間通過空格隔開。
方法的參數列表可以不包含參數、也可以包含1個或多個參數。
例如:public abstract int p(int x,String s);
抽象方法的定義格式與不具有抽象屬性的成員方法的定義格式之間的區別:
①除了是否含有方法修飾詞abst之外,抽象成員方法的定義以分號結束,不含方法體。
②而不具有抽象屬性的成員方法的定義在成員方法聲明之後不能立即出現分號,必須含有方法體。
注意:如果一個類不具有抽象屬性,則不能再該類的類體中定義抽象成員方法
『肆』 abstract 在java中干什麼用的
聲明方法的存在而不去實現它的類被叫做抽象類(abstract class),它用於要創建一個體現某些基本行專為的類,並屬為該類聲明方法,但不能在該類中實現該類的情況。不能創建abstract 類的實例。然而可以創建一個變數,其類型是一個抽象類,並讓它指向具體子類的一個實例。不能有抽象構造函數或抽象靜態方法。Abstract 類的子類為它們父類中的所有抽象方法提供實現,否則它們也是抽象類為。取而代之,在子類中實現該方法。知道其行為的其它類可以在類中實現這些方法。
static與abstract,它們不能同時用於修飾一個方法。因為abstract的語義就是說這個方法是多態方法,需要subclass的實現。而static方法則是在本類中實現的,編譯期綁定,不具有多態行為。
synchronized同步,也是一樣的道理,具體可以參考JAVA語言規范