首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JAVA8的铸造是什么?

JAVA8的铸造是什么?
EN

Stack Overflow用户
提问于 2019-08-13 12:56:51
回答 1查看 83关注 0票数 0

谁能解释一下TextMessage textMessage = (TextMessage) message;的工作原理吗?(JAVA 8)

TextMessage继承消息

消息不是克雷可的实例

代码语言:javascript
复制
if(message instanceof TextMessage) {
   TextMessage textMessage = (TextMessage) message; 
   String body = textMessage.getBody(); 
}

预期产出良好。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-13 13:07:47

它可以工作,因为当您将textMessage设置为相等时,您正在对消息对象进行强制转换。实际上,您告诉Java不要理会它认为消息是什么,而是将其视为一个TextMessage对象。这意味着它将通过编译器阶段。

在您的代码中,您已经做了适当的扩展来检查消息实际上是一个TextMessage。如果您没有这样做,如果您的代码在消息不是TextMessage的地方运行,那么您将得到一个Java类强制转换异常。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57478217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档