A. java中什麼叫抽象方法和抽象類及他們的特點,說的具體些,寫個例子
7.何為抽象方法和抽象類?
馬克 -to -win:方法前有個abstract修飾符,就叫抽象方法。類前有個abstract修飾符就是抽象類,完了,簡單就好記。
以下是二者的要點:馬 克 -to -w in :
1)抽象方法沒有函數體。有童鞋說,這有什麼意義呢?比如下面的例子,當我們不知道現在是什麼車時,你讓我寫駕駛(steer)這個方法,我怎麼寫呢?這種場合就需要抽象方法。
2)抽象類(Veh)的子類(Lim)只要不是抽象類,馬克-to-win:它自己(Lim)或它的父類(Car)必須把那個抽象類里的抽象方法全部實現掉。這句話很復雜,對照下面的例子來理解。
3)抽象類不能被實例化。字面上好理解,抽象的東西那麼抽象,看不見摸不著,當然不能被實際的具體的生成了。還是舉上面的例子。當我們現在連什麼車都不知道時,也不知道它是自行車還是豪華轎車時,你讓我具體地生成這輛車,當然是不可能了。。。。。。。。。。。詳情網上找「馬克-to-win」,參考他的網站或他的網路空間:java第三章的內容,如果實在找不到,按我下面說的地址找:
網站名是:mark-to-win.com
再附加上下邊的路徑地址: /JavaBeginner/JavaBeginner3_web.html#AbstractMethodClass
B. 什麼是抽象類抽象類有什麼作用
抽象類往往用來表徵對問題領域進行分析、設計中得出的抽象概念,是對一系列看上去不同,但是本質上相同的具體概念的抽象。
作用:通常在編程語句中用 abstract 修飾的類是抽象類。在C++中,含有純虛擬函數的類稱為抽象類,它不能生成對象;在java中,含有抽象方法的類稱為抽象類,同樣不能生成對象。
抽象類裡面可以有非抽象方法但介面里只能有抽象方法 聲明方法的存在而不去實現它的類被叫做抽像類(abstract class),它用於要創建一個體現某些基本行為的類,並為該類聲明方法,但不能在該類中實現該類的情況。
不能創建abstract 類的實例。然而可以創建一個變數,其類型是一個抽像類,並讓它指向具體子類的一個實例。不能有抽像構造函數或抽像靜態方法。Abstract 類的子類為它們父類中的所有抽像方法提供實現,否則它們也是抽像類為。
(2)什麼是抽象類與抽象方法擴展閱讀:
在使用抽象類時需要注意幾點:
1、抽象類不能被實例化,實例化的工作應該交由它的子類來完成,它只需要有一個引用即可。
2、抽象方法必須由子類來進行重寫。
3、只要包含一個抽象方法的抽象類,該方法必須要定義成抽象類,不管是否還包含有其他方法。
4、抽象類中可以包含具體的方法,當然也可以不包含抽象方法。
5、子類中的抽象方法不能與父類的抽象方法同名。
6、abstract不能與final並列修飾同一個類。
7、abstract不能與private、static、final或native並列修飾同一個方法。