JAVA抽象類和抽象方法(abstract)例項分析
阿新 • • 發佈:2020-01-07
本文例項講述了JAVA抽象類和抽象方法(abstract)。分享給大家供大家參考,具體如下:
一、抽象(abstract)的使用
當父類的某些方法不確定時,可以用abstract關鍵字來修飾該方法[抽象方法],用abstract來修飾該類[抽象類]。
我們都知道,父類是將子類所共同擁有的屬性和方法進行抽取,這些屬性和方法中,有的是已經明確實現了的,有的還無法確定,那麼我們就可以將其定義成抽象,在後日子類進行重用,進行具體化。這樣,抽象類也就誕生了。
例如,定義了“動物”父類,其中“動物名稱”和“動物年齡”屬性已經明確了,但是“動物叫”的方法沒有明確,此時就可以將“動物叫”定義為抽象方法。
所以,抽象類是為了把相同的但不確定的東西的提取出來,為了以後的重用。定義成抽象類的目的,就是為了在子類中實現抽象類。
package javastudy; public class AbstractDemo1 { public static void main(String[] args) { // TODO Auto-generated method stub } } // 這就是一個抽象類 abstract class Animal { String name; int age; // 動物會叫 public abstract void cry(); // 不確定動物怎麼叫的。定義成抽象方法,來解決父類方法的不確定性。抽象方法在父類中不能實現,所以沒有函式體。但在後續在繼承時,要具體實現此方法。 } // 抽象類可以被繼承 // 當繼承的父類是抽象類時,需要將抽象類中的所有抽象方法全部實現。 class cat extends Animal { // 實現父類的cry抽象方法 public void cry() { System.out.println("貓叫:"); } }
二、用abstract修飾的類,即抽象類;用abstract修飾的方法,即抽象方法。
三、抽象方法不能有方法主體。格式如下:
abstract void xxx();
四、抽象類不能被例項化。因為抽象類中方法未具體化,這是一種不完整的類,所以直接例項化也就沒有意義了。
五、抽象類中不一定要包含abstrace方法。也就是了,抽象中可以沒有abstract方法。
六、一旦類中包含了abstract方法,那類該類必須宣告為abstract類。
更多java相關內容感興趣的讀者可檢視本站專題:《Java面向物件程式設計入門與進階教程》、《Java資料結構與演算法教程》、《Java操作DOM節點技巧總結》、《Java檔案與目錄操作技巧彙總》和《Java快取操作技巧彙總》
希望本文所述對大家java程式設計有所幫助。