Java子類是否會有父類的private方法和屬性

2021-03-04 06:00:26 字數 2709 閱讀 8344

1樓:育知同創教育

子類繼承父類,子類擁有了父類的所有屬性和方法。

程式驗證,父類的私有屬性和方法子類是無法直接訪問的。當然私有屬性可以通過public修飾的getter和setter方法訪問到的,但是私有方法不行。

假設:子類不能夠繼承父類的私有屬性和方法

那麼:分析記憶體後,會發現,當乙個子類被例項化的時候,缺省會先呼叫父類的構造方法對父類進行初始化,即在記憶體中建立乙個父類物件,然後再父類物件的外部放上子類獨有的屬性,兩者合起來成為乙個子類的物件。

所以:子類繼承了父類的所有屬性和方法或子類擁有父類的所有屬性和方法是對的,只不過父類的私有屬性和方法,子類是無法直接訪問到的。即只是擁有,但是無法使用。

java中,子類將繼承父類的所有屬性和方法嗎

2樓:育知同創教育

1 是的,在java中,子類繼承父類的所有方法和屬性(構造方法要用關鍵super([引數])呼叫)另外,當父類的方法或屬性被宣告為private(私有的)時,子類也是不可以繼承的。 2、繼承是java中乙個重要的特色,便於程式的編寫,提高**的重用性。

3樓:明月依舊長

子類將繼承父類的非私有的屬性和方法

java中子類能不能繼承父類的私有屬性和方法

4樓:育知同創教育

最近學習繼承,從書中看到子類繼承父類,子類擁有父類所有的屬性和方法,於是使用程式去驗證,發現父類的私有屬性和私有方法,子類是不能訪問的,當然一些父類的私有屬性可能可以通過相應的方法訪問到,但是私有的方法似乎不能簡單的訪問,這裡暫不考慮java反射機制,於是我分析,子類不能繼承父類私有的屬性及方法,但是分析了記憶體後,我發現我是錯的,在乙個子類被建立的時候,首先會在記憶體中建立乙個父類物件,然後在父類物件外部放上子類獨有的屬性,兩者合起來形成乙個子類的物件。所以所謂的繼承使子類擁有父類所有的屬性和方法其實可以這樣理解,子類物件確實擁有父類物件中所有的屬性和方法,但是父類物件中的私有屬性和方法,子類是無法訪問到的,只是擁有,但不能使用。就像有些東西你可能擁有,但是你並不能使用。

所以子類物件是絕對大於父類物件的,所謂的子類物件只能繼承父類非私有的屬性及方法的說法是錯誤的。可以繼承,只是無法訪問到而已。

java繼承中父類可以訪問子類哪些屬性

5樓:育知同創教育

能的1、除了java中,子類繼承父類的所有方法和屬性(構造方法要用關鍵字super([引數])呼叫)

另外,當父類的方法或屬性被宣告為private(私有的)時,子類也是不可以繼承的。

2、繼承是java中乙個重要的特色,便於程式的編寫,提高**的重用性。

6樓:匿名使用者

父類能訪問子類 public static修飾的屬性;

7樓:公尺斯特丸不知道

父類不能獲取子類的屬性啊

java中子類會繼承父類的構造方法嗎

8樓:好程式設計師

是的,繼承

是子類會繼承父類的屬性和方法,構造方法也是屬於方法,所以會繼承構造方法,例如:

public class concept

}//父類(超類)

class chicken

public void desc()

}//子類

class homechicken extends chicken}//子類野雞類

class pheasant extends chicken}在這裡,

public class concept

}//父類(超類)

class chicken

public void desc()

}//子類

class homechicken extends chicken}//子類野雞類

class pheasant extends chicken}在這裡homechicken 繼承父類chicken,在子類homechicken中,也繼承了父類的chicken()方法

9樓:萍水相逢本是緣

不會,構造方法不能重寫,但可以過載

java的子類如何重寫父類的方法?

10樓:無錫

子類定義中乙個方法,並且這個方法的名字、返回型別、引數個數和型別與從父類繼承的方法完全相同。就可以了。

11樓:千鋒教育

java中重寫父類bai的方法只

需寫出與父du類一模一樣的這個方zhi法即可,包括方法名,dao參專數型別,引數值,返屬回值。

事例**如下:

public class demo extends fdemostatic void a()

}class fdemo

}java重寫父類方法後,原有的父類裡面的實現全部清空,變為重寫後的內容。

12樓:

先extends繼承了父類,然後在子類中寫上要重寫的方法,定義要和父類一樣,裡面的實現內容按自己想要的要求寫就行了。

13樓:匿名使用者

就是重寫唄,你extends父類的方法,並且在你本類中也寫乙個和父類同樣名字的方法名。很簡單的。

14樓:匿名使用者

在方法前面 加上@override

Python子類繼承,如果不用父類的函式和方法,應該怎麼寫

子類繼承父類時,如果父類有需要初始化的屬性,那麼必須在子類中呼叫父類的初始化方法,幫助父類進行初始化,否則,子類可以不呼叫父類的初始化方法 示例 父類car中沒有屬性需要初始化,所有子類中也不需要呼叫父類的初始化方法 class car def show name self print car na...

JAVA定義圓形類的方法是什麼,JAVA定義圓形類。

public class circle public double getarea public double getperimeter public class testcircle java定義圓形類。20 public class circle public double getarea pu...

java類的方法由哪幾部分組成

組成 乙個簡單的java程式由java包 如 import java.awt.類宣告 變數 構造方法 可預設 方法 這幾部分構成。java java是一種可以撰寫跨平台應用程式的物件導向的程式語言。java 技術具有卓越的通用性 高效性 平台移植性和安全性,廣泛應用於pc 資料中心 遊戲控制台 科學...