繁体   English   中英

未经检查的从Object到Java 7的转换

[英]Unchecked cast from Object to Java 7

我现在不是Java无法理解错误在哪里。 使用Java 7。

public void chatMessage(String userName, String message) {
      IScope scope = Red5.getConnectionLocal().getScope();
      ISharedObject chat = getSharedObject(scope, "chat");
      List<ChatHistoryItem> history = (List<ChatHistoryItem>) chat.getAttribute("remoteHistory");
      ChatHistoryItem item = new ChatHistoryItem();
      item.user = userName;
      item.date = new Date();
      item.message = message;
      history.add(item);
      chat.setAttribute("remoteHistory", history);
    }

错误: Unchecked cast from Object to List<ChatHistoryItem>

问题是因为您不能安全地确定ISharedObject.getAttribute方法调用将返回的类型。 在此行中发生:

List<ChatHistoryItem> history = (List<ChatHistoryItem>) chat.getAttribute("remoteHistory");

如果此方法返回的object不是List<ChatHistoryItem>类型,则将收到ClassCastException 如果该方法返回正确的类型,您的代码仍将执行。

我假设这不是破坏您的代码的错误,它只是来自IDE使用的警告?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM