super是父类对象的引用为啥不能输出地址

来源:9-7 Java 中的 super 的使用

qq_慕工程6455751

2019-07-22 23:17

为什么在实例方法或构造方法中System.out.println(this)能输出地址,而System.out.println(super)会报错,this和super不都是引用吗,为啥不能输出super的地址

写回答 关注

1回答

  • qq_慕九州5449807
    2019-07-23 09:10:41

    因为使用当前类的时候肯定会new当前类的对象,会在内存里为当前对象开辟一块空间,System.out.println(this)就能把开辟出的内存地址输出出来。反过来想,当前类继承父类的时候,只是继承父类的属性和方法,在new当前类的时候,不会new一个父类,父类没有被实例化,肯定是不被允许输出地址的。不管什么类,只有被实例化的时候,才会有内存空间,不被实例化,仅仅是一串没有被编译的代码而已。不知道你能理解我说的话吗

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530655 学习 · 6091 问题

查看课程

相似问题