java抽象類方法
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. java抽象類
其實狠好理解,因為抽象類包括抽象方法和非抽象方法。
如果父類是一個抽象類,當子類繼承父類的時候,要實現抽象的方法,如果不實現的話,那麼子類就必須是一個抽象的類。
C. 什麼是java抽象方法
抽象方法如下例子:
abstract Class A(){//抽象類
abstract void a();//抽象方法,沒有方法體
}
註:1.抽象類或者介面不能被實例化;
2.有抽象方法的類一定是抽象類或者介面;
3.抽象類可以有不是抽象的屬性跟方法;
4.子類繼承抽象類必實現其抽象方法,除非子類是抽象類;
左上角有我頭像,有很多有趣的朋友在一起討論交流;
D. 關於java抽象方法
下面是抽象方法聲明時採用的語法:abstract void f();
如果從一個抽象類繼承,而且想生成新類型的一個對象,就必須為基礎類中的所有抽象方法提供方法定義。如果不這樣做(完全可以選擇不做),則衍生類也會是抽象的,而且編譯器會強迫我們用abstract 關鍵字標志那個類的「抽象」本質。即使不包括任何abstract 方法,亦可將一個類聲明成「抽象類」。如果一個類沒必要擁有任何抽象方法,而且我們想禁止那個類的所有實例,這種能力就會顯得非常有用。
在面向對象的概念中,我們知道所有的對象都是通過類來描繪的,但是反過來卻不是這樣。並不是所有的類都是用來描繪對象的,如果一個類中沒有包含足夠的信息來描繪一個具體的對象,這樣的類就是抽象類。
抽象類往往用來表徵我們在對問題領域進行分析、設計中得出的抽象概念,是對一系列看上去不同,但是本質上相同的具體概念的抽象。比如:如果我們進行一個圖形編輯軟體的開發,就會發現問題領域存在著圓、三角形這樣一些具體概念,它們是不同的,但是它們又都屬於形狀這樣一個概念,形狀這個概念在問題領域是不存在的,它就是一個抽象概念。正是因為抽象的概念在問題領域沒有對應的具體概念,所以用以表徵抽象概念的抽象類是不能夠實例化的。在面向對象領域,抽象類主要用來進行類型隱藏。我們可以構造出一個固定的一組行為的抽象描述,但是這組行為卻能夠有任意個可能的具體實現方式。這個抽象描述就是抽象類,而這一組任意個可能的具體實現則表現為所有可能的派生類。模塊可以操作一個抽象體。由於模塊依賴於一個固定的抽象體,因此它可以是不允許修改的;同時,通過從這個抽象體派生,也可擴展此模塊的行為功能。熟悉OCP的讀者一定知道,為了能夠實現面向對象設計的一個最核心的原則OCP(Open-Closed Principle),抽象類是其中的關鍵所在。
E. java怎麼調用抽象類方法創建列表
1、publicabstractclassCall{undefined。
2、,undefined。
3、Connectionearliest=null。
4、以上就是java用java調用抽象類方法創建列表的方法。