xiaoshengfdyh
小生array
2016-05-06 02:26
采纳率: 20%
浏览 1.1k

子类调用父类方法的问题

父类:

 package com.example.main;

public class Parent {

    public void print(){
        System.out.println(this);
    }

}

子类:

 package com.example.main;


public class Childer extends Parent {

    public static void main(String[] args) {
        new Childer().print();
    }

    @Override
    public void print() {
        super.print();
    };

}

当执行main方法,控制台打印出来的是Child对象的地址:com.example.main.Childer@d3db51

为什么打印的是子类对象的地址,在父类方法中打印this对象不应该打印的是父类对象的吗??

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • CSDNXIAOS
    Robot-S 2016-05-06 02:32

    答案就在这里:子类调用父类方法
    ----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

    点赞 评论
  • bdmh
    bdmh 2016-05-06 02:41

    虽然你调用的是父类的方法,但是this指向的是child对象,这既是多态

    点赞 评论
  • qq_34750152

    这是因为你在子类中调用父类的方法,这时,这个this指的是子类,而不是父类,如果在父类中引用,那么this就是指当前类

    点赞 评论
  • ZGZ1002
    ZGZ1002 2016-05-06 04:25

    你这里的this指的是子类,而不是父类,如果在父类中引用,那么this就是指当前类,
    可以参考:http://www.360doc.com/content/14/0609/15/10630456_385121221.shtml

    点赞 评论
  • mazegong
    mazegong 2016-05-06 07:51

    虽然你调用的是父类的方法,但是this指向的是child对象,这既是多态

    点赞 评论

相关推荐