點擊查看:2015計算機等級考試二級Java入門教程章節匯總
點擊查看:2015計算機等級考試二級Java入門教程第六章匯總
6.6 抽象類
在類Animal中,我們介紹了sound()方法的一個版本,該方法沒有任何內容,這是因為我們想在子類對象中動態地調用sound{)方法。在一般的類Animal中,方法sound()沒有任何意義,所以實現它也沒有什么意義,這種情況經常出現在面向對象的程序設計中。你會經常發現你自己建立了一個超類,利用多態性從這里你會派生許多的子類。
Java用抽象類( abstract classes)來處理這種情況。一個抽象類就是有一個或者多個方法只被聲明,而沒有被定義的類。這些方法體被省略的原因是如同本例中的類Animal的方法sound()一樣,實現它沒有什么意義。由于沒有定義它們的內容,所以把它們稱作抽象方法(abstract methods ).抽象方法的聲明以分號結束,并且用關鍵字abstract來說明它以標識它為抽象方法。為了定義一個抽象類,你要在類名的前面使用關鍵字abstract.
通過下面語句的修改,我們可以把類Animal定義成一個抽象類:
public abstract class Animal
{
public abstract void Round(); //Abstract method
public Animal(String Atype)
{
type=new String(aType);
{
public String toString()
{
Return .This is a+type
{
private String type;
上面這個程序在做這些改動后仍然能夠正常地運行。至于放在類名前面的是publicabstract還是abstract public并沒有關系,這兩種形式完全等價,但是應該在你的應用中保持一致。人們普遍比較喜歡public abstract順序。抽象方法的聲明也是一樣,但是public和abstract都必須提前到返回類型說明之前,在本例中的返回類型為void。
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |