1樓:趣味科普妹
1 .介面只能包含抽象森基方法,抽象類可以包含普通方法。
2. 介面只能定義靜態常量屬性,抽象類既可以定義普通屬性,也可以定義靜態常量屬性。
3 .介面不包含構造方法,抽象類裡可以包含構造方法。
4.抽象類不能被例項化,但不代表它不可以有建構函式,抽象類可以有建構函式,備繼承類擴充。
5.介面是核心,其定義了要做的事情,包含了許多的方法,但沒有定義這些方法應該如何做。
6. 如果許多類實團春畝現了某個介面,那麼每個都要用**實現那些方法。
7.如果某一些類的實現有共通之處,則可以抽象出來乙個抽象類,讓抽象類實現介面的公用的**,而那些個性化的方法則由各個子類去實現。
所塌森以,抽象類是為了簡化介面的實現,他不僅提供了公共方法的實現,讓你可以快速開發,又允許你的類完全可以自己實現所有的方法,不會出現緊耦合的問題。
2樓:匿名使用者
無論哪種語言的抽象類都是可以有建構函式的,你這個論斷就是錯誤的。
3樓:網友
抽象類的定義:如果乙個類中包含悔巨集純羨塵虛擬函式,則該類被稱為抽象類,不能被例項化。
所以抽象類都兄前禪不可例項化,自然建構函式也就沒意義了。
抽象類的構造方法有什麼用
4樓:力慶雪孝多
抽象類的作用一般是為了其子類規定一些必須的功能和方法,但是這些方法不能夠被抽象類實現。
抽象類中除了抽象方法(也就是其子類必須重寫的方法),還可以定義普通的方法,儘管這些方法不能被抽象類的例項使用,但它卻可以被其子類。
作為公用方法來使用。
使用。舉個例子,定義"多邊形"抽象類(類中定義了多邊形各點的陣列),除了定義那些抽象方法(及子類的實現各不相同的方法),還可以定義子類都可以使用的通用方法,如"多邊形面積的計算","周長的計算"等等。這樣,其子類三角形就不用在寫上述方法了。
希望對你有幫助。
是不是j**a的抽象類都不必有構造方法?
5樓:陸小瓴
我覺得不需要,抽象類不能例項化。
什麼叫介面?什麼叫抽象類,什麼是抽象類,什麼是介面,兩者有什麼區別,
抽象類不能例項化,可以通過子類繼承來進行例項化啊.介面就象插座一樣,全世界的插座是不是拿到 都可以使用,這個就是一種標準吧.至於區別自己去網上搜尋吧,多得是,不要在這裡問.介面就是兩個東西能合到一起的那個地方.抽象類就是像芙蓉姐姐那樣的.以後遇到長的象她的mm都可以歸類到抽象類了.看來你上課是一個不...
C 中抽象類和虛基類用途上有什麼區別
語法上有抽象類和虛基類,不等於你一定要用它。花裡胡哨的東西,我通常不用。我能想到的抽象類用處,大概這個優點可以用一用 含有純虛擬函式的類都是抽象類。基類中實際上並不使用這個函式,它只是通知編譯系統 在這裡宣告一個虛擬函式,留待在派生類中定義。為一個類族提供一個公共介面。例如,計算平面形狀的面積,抽象...
什麼情況下使用抽象類,什麼情況下使用介面
能使用抽象類就用抽象類 在不能使用類的時候才使用介面 畢竟你只能繼承一個介面嘛 每個類只能extends一個父類,但是能implements很多介面。什麼情況下使用抽象類,什麼情況下使用介面 介面和抽象類,都可以看做一個抽象的型別,而其他的類都可以看做是一個具體類 介面裡面方法都是沒有實現的,抽象類...