为了账号安全,请及时绑定邮箱和手机立即绑定

视频中老师讲的父类的引用指向子类对象为什么没有new?

http://img1.sycdn.imooc.com//5802e5d700010da703040068.jpg视频中老师讲的父类的引用指向子类对象为什么没有new?

正在回答

3 回答

new Dog()的时候已经开辟一个空间,父类的引用指向子类对象就是重新指向这个空间,而不是重新开辟空间,所以不需要再new。

0 回复 有任何疑惑可以回复我~
#1

qq_浮雲遊子_03977413 提问者

非常感谢!
2016-10-17 回复 有任何疑惑可以回复我~

dog这个对象名,在java编译器中默认就是他的内存地址。其实引用也就是子类与父类共用内存地址。已经把dog对象的内存地址赋予父类了,父类引用子类的内存地址,子类已经开辟了一块内存空间,若再使用new关键字,那是再次开辟一块新的内存空间,赋予新的内存地址,不是引用。造成了空间的浪费。

2 回复 有任何疑惑可以回复我~

这是普通赋值,你可以赋新值(如用new)或者旧值。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

视频中老师讲的父类的引用指向子类对象为什么没有new?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信