我们知道java中子类继承父类,会使用super()对父类初始化,此时并没有通过new或其他方式来构造父类对象,那么在子类中我们可以使用super.父类方法,来调用父类成员方法,但是,类的成员方法需要该类的对象才能调用,由此,小弟很不明白,子类继承父类,没有产生父类对象,怎么能调用父类方法,这里的super本质到底是个什么啊?
4 回答
茅侃侃
TA贡献1842条经验 获得超21个赞
首先,可以肯定的事并没有创建父类对象,执行父类的构造方法只是初始化父类,并在子类的堆内存空间中开辟出了父类的一块专属空间,所以此时父类堆内存的地址就是子类在堆内存中的地址,this代表当前对象的引用,super就是父类堆内存空间
添加回答
举报
0/150
提交
取消