日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[转载] 一文彻底搞懂父类引用指向子类对象问题

發布時間:2025/3/11 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [转载] 一文彻底搞懂父类引用指向子类对象问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考鏈接: 用子類引用子類對象 vs 父類引用

public class Father {

? ? private String name;

? ? private int age;

? ? private int weight;

? ??

? ? public void eat() {

? ? ? ? System.out.println("Father is eating");

? ? }

? ??

? ? private void run() {

? ? ? ? System.out.println("Runing....");

? ? }

? ??

? ? public Father() {

? ? ? ? name = "zhangsan";

? ? ? ? age = 23;

? ? ? ? weight = 60;

? ? }

? ??

? ? public static void main(String[] args) {

? ? ? ? /*

? ? ? ? ?*

? ? ? ? ?*如果子類的構造方法中對繼承來自父類的變量重新賦予新的值的話,那么這樣子調用的將會是子類的變量

? ? ? ? ?*如果子類重新定義了和父類一樣的變量的話那么這樣將會輸出的是父類的變量??

? ? ? ? ?*Father f = new Son();

? ? ? ? ?*f.age f.weight

? ? ? ? ?*/

? ? ? ? Father f = new Son();

? ? ? ? f.eat();

? ? ? ? f.run();

? ? ? ? System.out.println("。。。。。。年齡是:" + f.age + "\t" + f.weight + "\t" + f.name);

? ??????

//? ? ? ? Son s = new Father();這樣子會報錯

? ? }

}

?

class Son extends Father{

?

? ? private int salary;

?

? ? public void eat() {

? ? ? ? System.out.println("Son is eating");

? ? }

? ??

? ? public void sleep() {

? ? ? ? System.out.println("sleep ....");

? ? }

? ??

? ? public Son() {

? ? ? ? name = "lisi";

? ? ? ? age = 3;

? ? ? ? salary = 60;

? ? ? ? weight = 70;

? ? }

?

? ? public int getAge() {

? ? ? ? return age;

? ? }

?

? ? public void setAge(int age) {

? ? ? ? this.age = age;

? ? }

}

?

最終輸出的結果? f.eat()輸出的是子類中重寫父類中的eat()方法?

f.run()輸出的是父類中的run()方法(實際上是輸出的子類中的,只是因為子類中沒有重寫,所以看上去輸出的是父類中的,實際調用的是子類的)?

f.age和f.weigth輸出的是子類的構造方法中重新賦值的?

f.name輸出的是父類中的屬性?

由此可以看出,父類引用指向子類對象,最終這個父類引用所擁有的變量是是子類中的(如果構造方法中沒有重新賦值那就和父類中的一樣,如果重新賦值了那就是子類中賦值以后的),方法也是子類中的(如果重寫了就是重寫之后的方法,如果沒有重寫的那就和父類中的一樣)

總結

以上是生活随笔為你收集整理的[转载] 一文彻底搞懂父类引用指向子类对象问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。