為什麼抽象類不能有建構函式?

2025-07-05 16:10:10 字數 1077 閱讀 9728

1樓:趣味科普妹

1 .介面只能包含抽象森基方法,抽象類可以包含普通方法。

2. 介面只能定義靜態常量屬性,抽象類既可以定義普通屬性,也可以定義靜態常量屬性。

3 .介面不包含構造方法,抽象類裡可以包含構造方法。

4.抽象類不能被例項化,但不代表它不可以有建構函式,抽象類可以有建構函式,備繼承類擴充。

5.介面是核心,其定義了要做的事情,包含了許多的方法,但沒有定義這些方法應該如何做。

6. 如果許多類實團春畝現了某個介面,那麼每個都要用**實現那些方法。

7.如果某一些類的實現有共通之處,則可以抽象出來乙個抽象類,讓抽象類實現介面的公用的**,而那些個性化的方法則由各個子類去實現。

所塌森以,抽象類是為了簡化介面的實現,他不僅提供了公共方法的實現,讓你可以快速開發,又允許你的類完全可以自己實現所有的方法,不會出現緊耦合的問題。

2樓:匿名使用者

無論哪種語言的抽象類都是可以有建構函式的,你這個論斷就是錯誤的。

3樓:網友

抽象類的定義:如果乙個類中包含悔巨集純羨塵虛擬函式,則該類被稱為抽象類,不能被例項化。

所以抽象類都兄前禪不可例項化,自然建構函式也就沒意義了。

抽象類的構造方法有什麼用

4樓:力慶雪孝多

抽象類的作用一般是為了其子類規定一些必須的功能和方法,但是這些方法不能夠被抽象類實現。

抽象類中除了抽象方法(也就是其子類必須重寫的方法),還可以定義普通的方法,儘管這些方法不能被抽象類的例項使用,但它卻可以被其子類。

作為公用方法來使用。

使用。舉個例子,定義"多邊形"抽象類(類中定義了多邊形各點的陣列),除了定義那些抽象方法(及子類的實現各不相同的方法),還可以定義子類都可以使用的通用方法,如"多邊形面積的計算","周長的計算"等等。這樣,其子類三角形就不用在寫上述方法了。

希望對你有幫助。

是不是j**a的抽象類都不必有構造方法?

5樓:陸小瓴

我覺得不需要,抽象類不能例項化。

什麼叫介面?什麼叫抽象類,什麼是抽象類,什麼是介面,兩者有什麼區別,

抽象類不能例項化,可以通過子類繼承來進行例項化啊.介面就象插座一樣,全世界的插座是不是拿到 都可以使用,這個就是一種標準吧.至於區別自己去網上搜尋吧,多得是,不要在這裡問.介面就是兩個東西能合到一起的那個地方.抽象類就是像芙蓉姐姐那樣的.以後遇到長的象她的mm都可以歸類到抽象類了.看來你上課是一個不...

C 中抽象類和虛基類用途上有什麼區別

語法上有抽象類和虛基類,不等於你一定要用它。花裡胡哨的東西,我通常不用。我能想到的抽象類用處,大概這個優點可以用一用 含有純虛擬函式的類都是抽象類。基類中實際上並不使用這個函式,它只是通知編譯系統 在這裡宣告一個虛擬函式,留待在派生類中定義。為一個類族提供一個公共介面。例如,計算平面形狀的面積,抽象...

什麼情況下使用抽象類,什麼情況下使用介面

能使用抽象類就用抽象類 在不能使用類的時候才使用介面 畢竟你只能繼承一個介面嘛 每個類只能extends一個父類,但是能implements很多介面。什麼情況下使用抽象類,什麼情況下使用介面 介面和抽象類,都可以看做一個抽象的型別,而其他的類都可以看做是一個具體類 介面裡面方法都是沒有實現的,抽象類...