/*
抽象類:
目前存在的問題:
1.動物類的run方法描述的不正確。
2.沒有強制要子類一定要重寫run方法
抽象類的應用場景:
我們在描述一類事物的時候,發現這種事物確實存在某種行為,
但是這種行為目前是不具體的,那麼我們可以抽取這種行為的宣告,但是不去實現這種行為,
這種時候這種行為我們稱作為抽象行為,我們就需要使用抽象類.
抽象類的好處:強制要求子類一定要實現指定的方法。
抽象類要注意的細節:
1.如果乙個函式沒有方法體,那麼該函式必須要使用abstract修飾,把該函式修飾成抽象的函式。
2.如果乙個類出現了抽象的函式,那麼該類也必須使用abstract修飾.
3.如果乙個非抽象類繼承了抽象類,那麼必須要把抽象類的所有抽象方法實現
4.抽象類可以存在抽象方法,也可以存在非抽象方法。
5.抽象類可以不存在抽象方法。
6.抽象類不能建立物件。
為什麼抽象類不能建立物件呢?
因為抽象類是存在抽象方法的,如果能讓抽象類建立物件的話,那麼使用抽象的物件
呼叫抽象方法是沒有任何意義的。
7.抽象類是存在建構函式的,其建構函式是提供給子類建立物件的時候初始化父類的屬性的。
需求:描述乙個圖形類,圓形,矩形三個類,不管哪種圖形都會具備計算面積與周長的行為,
只不過每種圖形的計算方式不一致。
*///動物類----->抽象類
abstract class animal
//非抽象方法
public void eat()
//移動。。
public abstract void run();
}//狗 是屬於動物中的一種
class dog extends animal
public void run()
}//魚 是屬於動物中的一種
class fish extends animal
public void run()
}class demo3
/*需求:描述乙個圖形類,圓形,矩形三個類,不管哪種圖形都會具備計算面積與周長的行為,
只不過每種圖形的計算方式不一致而已。
常量的命名規範:全部字母大寫,單詞與單詞之間使用下劃線分隔。
abstract 不能與以下關鍵字共同修飾乙個方法
1.abstract不能與private共同修飾乙個方法
2.abstract不能與static共同修飾乙個方法
3.abstract不能與final關鍵字共同修飾乙個方法
*///圖形類
abstract class myshape
public abstract void getarea();
public abstract void getlength();
}//圓形屬於圖形的一種
class circle extends myshape
public void getarea()
public void getlength()
}//矩形屬於圖形的一種
class rect extends myshape
public void getarea()
public void getlength()
}class demo4
}
java基礎 抽象類
一 定義 在類中宣告乙個方法,這個方法沒有實現體,是乙個 空 方法,這樣的方法就叫抽象方法,使用修飾符 abstract 當乙個類有抽象方法的時候,該類就必須宣告為抽象類。二 例項 1 含有抽象方法的類,必須定義為抽象類 為animal增加乙個抽象方法eat 並且把animal宣告為abstract...
JAVA基礎 抽象類
1.子類必須覆蓋抽象類的全部抽象方法,否則子類還是抽象類。2.抽象方法必須定義在抽象類中,該類也必須被abstract修飾。3.抽象類不可以被例項化。4.抽象類中可以有構造方法,用於給子類初始化。5.抽象類中可以定義非抽象方法,但是很少見。6.抽象關鍵字不可以與那些關鍵字共存?private pri...
Java 基礎 抽象類
抽象方法 總結在回顧設計模式時,發現用到類很多抽象類,寫一篇部落格記錄學習。public abstract class employee public double computepay public void mailcheck override public string tostring pu...