“通用类”的“对象”实例[重复]

问题描述 投票:0回答:1

为什么会出现编译错误

java:不兼容的类型:自定义无法转换为通用

在这一行生成:

System.out.println(custom instanceof Generic);

为什么

instanceof
的实例和 Object 的实例之间
的行为不同

Custom
    
java class object generics instanceof
1个回答
0
投票
因为

class Custom { } public class Generic<T> { public static void main(String[] args) { Object object = new Object(); System.out.println(object instanceof Generic); //false Custom custom = new Custom(); System.out.println(custom instanceof Generic); //Compilation Error } }

 不会扩展类 
Generic
 并且编译器知道这一点。您的 
Custom
 检查永远不可能为真,因此它会引发编译错误。

© www.soinside.com 2019 - 2024. All rights reserved.