如果在抽象類中定義私有變數,子類繼承抽象類後,子類中的方法需要訪問抽象類中定義的私有變數怎麼辦

2021-03-27 08:39:23 字數 2667 閱讀 8937

1樓:匿名使用者

私有的子類是不可以用的。但是如果想訪問父類的私有變數或者改變私有變數,可以在超類中定義兩個方法get() set()

2樓:金城杞人

在抽象父類裡定義兩個setter/getter方法。

抽象類不是必須有抽象方法。

3樓:匿名使用者

定義私有變數主要是防new的 你把類定為靜態,或者把變數定義為靜態,等都可以訪問

4樓:匿名使用者

set,get來獲取

5樓:火虹澀

private訪問修飾符只有內部類才能夠呼叫,子類是不可以的。如果想要在子類呼叫,請使用protected訪問修飾符。

6樓:29小和尚

可以直接訪問啊,或者用super

繼承了抽象類的子類需要把抽象類中的方法重寫一遍嗎?

7樓:是聰聰不是匆匆

如果子類是乙個非抽象類的的話,必須重寫父抽象類的所有抽象方法,如果子類是乙個抽象類的話,可以重寫父抽象類的抽象方法,也可以繼承父抽象類的抽象方法~

抽象類中定義構造方法後,繼承它的子類中也必須要寫出構造方法嗎

8樓:匿名使用者

隨便啊。可以寫可以不寫的~~~

9樓:夢裡尋你我他

可以寫,可以不寫,建構函式就是初始化

子類繼承了乙個抽象類如果子類沒有實現抽象類中的方法子類是不是必須宣告成abstract 型別的抽象類

10樓:匿名使用者

對於乙個類來說,不管它是繼承了什麼類或者實現了什麼介面等等,只要它當中還有未實現的方法,就要宣告是抽象類。

簡單說:只要存在抽象方法,就是抽象類

11樓:匿名使用者

是滴,如果不實現所有的抽象方法,就必須變成abstract類

12樓:匿名使用者

是的! 這說明這個子類還是抽象的。 這個類繼承了父類,就繼承了父類的所有public方法,包括抽象方法了,如果子類不是abstract類就必須實現父類的所有abstract的方法。

請問「抽象類中如果有抽象方法在被繼承時,子類必須實現抽象方法」什麼是「實現抽象方法」?謝。

13樓:幽冥神者

抽象方法只是乙個方法定義,本身沒有具體的**段,不能被執行。擁有抽象方內

法的類叫抽象類容,也不能被例項化。

乙個普通類繼承了抽象類後必須要將抽象類中所有的抽象方法根據自己業務的需要進行實現,說白了就是抽象方法沒有具體**,實現的過程就是編碼的過程

14樓:匿名使用者

抽象方法沒有方來法體,自只有個定義。如:public abstract void a();

你某個類繼承上面的類是,必須實現那個方法「a」 。

void a()

15樓:

public abstract class apublic class b extends a }因為制test方法bai在b中必須

du定義zhi有dao方法體

16樓:匿名使用者

通俗的講,抽象類中的抽象方法,比如說abstract void fun()他沒有方法體,在子類中必須要實現它:void fun()。

17樓:登山臨水送將歸

就是說子類中必須要定義這個方法

抽象方法必須在子類中實現,這句話對嗎?

18樓:馮老師(必果學院

不正確包含抽象方法的類叫做抽象類。而抽象方法是類中指那些僅宣告,並不做回實現的方法。

這答些方法可以作為乙個通用的介面,規範子類的實現。

但是抽象類的子類並不一定就是實體類,也可以是另乙個抽象類。在這種情況下,作為抽象類的子類,也可以不實現某些抽象方法,而是等待其子類去實現。

不過對於繼承了抽象類的實體類,則必須實現所有的抽象方法,否則無法用該類宣告物件——這在語法上是不允許的。

抽象方法往往被用做介面。在設計的時候,這種方法常常被用於那些需要和外部模組互動的類。這樣可以遮蔽外部對實際工作類細節的了解,避免引入過多的可能導致bug的因素;另一方面,這樣可以方便外部和內部互動,雙方只要遵循介面的定義互動即可,減少內部對外部的依賴。

19樓:匿名使用者

不完全對。首先,抽象類必定包含抽象方法,而作為乙個子類如果繼承自回抽象類,那麼

答如果要實現該類的物件,那麼久必須對抽象類中的抽象方法進行實現,而如果只是想再寫乙個抽象類,這不需要對父類中的抽象方法進行實現

20樓:匿名使用者

從兩個層面來回答:

抄1. 某乙個類如果定義了某個方法是抽象方法,則在本類中不能有任何實現,必須在子類中實現才行。(這裡的子類,是廣義的子類。)

2. 某乙個類如果定義了某個方法是抽象方法,其子類並非一定要實現。不想實現父類中的抽象方法的話,子類同樣定義成抽象類就是了。(這裡的父類,也是廣義的父類。)

計算機程式語言,並不是嚴格的科學,沒有嚴格的、嚴謹的定義,出這種摳字眼的判斷題,沒太大意思。

c抽象類和普通類的區別,java中抽象類和介面的區別?

1.c 沒有abstract.vc提供了乙個inte ce 2.抽象類就是指不能例項化的類,因為它們包含了純虛方法。3.虛函式是在申明的時候用了關鍵字virtual的類的 非靜態 成員函式 java中抽象類和介面的區別?抽象類是用來捕捉子類的通用特性的 它不能被例項化,只能被用作子類的超類。抽象類是...

java中的抽象類和介面該怎麼理解?定義上有什麼區

在物件導向的概念中,我們知道 所有的物件都是通過類來描繪的,但是並不是所有的類都是用來描繪物件的,如果乙個類中沒有包含足夠的資訊來描繪乙個具體的物件,這樣的類就是抽象類。抽象類往往用來表徵我們在對問題領域進行分析 設計中得出的抽象概念,是對一系列看上去不同,但是本質上相同的具體概念的抽象,我們不能把...

C知識定義抽象類shape應以計算面積

include using namespace std class shape 抽象基類 建構函式 virtual double area 0 面積計算函式 純虛函式 class rect public shape 派生類 矩形 double area 面積計算函式 實現 class circle ...