java-为什么我不能如图所示分配对象?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-为什么我不能如图所示分配对象?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含890字,纯文字阅读大概需要2分钟。
内容图文
![java-为什么我不能如图所示分配对象?](/upload/InfoBanner/zyjiaocheng/679/1571fdd4c7444dd4a8c746d3fd2a385d.jpg)
我是Java的新手.我正在阅读一本书中有关可比较和比较器接口的一章.在下面的代码中,它表示“找到一种修改最后一行代码以使其起作用的方法”.当前,它不编译.最后一行应该怎么做?
Hello Friend= new Hello("LOL");
Object myObj = Friend;
Hello myFriend = myObj; // What's wrong with this line ?
解决方法:
Hello Friend= new Hello("LOL");
现在,您有一个名为Friend的编译时类型Hello变量,该变量引用运行时类型Hello的对象
Object myObj = Friend;
现在,您有一个名为myObj的编译时类型为Object的变量,它也引用了运行时类型为Hello的同一对象.之所以允许这样做,是因为每个Hello也是一个对象.
Hello myFriend = myObj; // What's wrong with this line ?
这在编译期间失败,因为myObj具有编译时类型Object,并且您正尝试将其分配给编译时类型Hello的新变量.而且大多数对象都不是Hello.编译器不会尝试确定是否是这种特定对象,因为通常这是不可能的.
但是您可以通过确保此特定对象实际上是Hello来强制编译器执行此操作:
Hello myFriend = (Hello) myObj;
这称为casting.
内容总结
以上是互联网集市为您收集整理的java-为什么我不能如图所示分配对象?全部内容,希望文章能够帮你解决java-为什么我不能如图所示分配对象?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。