java - 如何实例化一个类<?扩展标签>对象?

标签 java class generics

我正在使用一个新的 API,但在实例化 Class 对象时遇到了麻烦,该 API 定义了一个抽象类 Tag 及其子类,其名称如 IntTag、DoubleTag、StringTag、ListTag... 等。我正在与目前是最后一个,因为 构造函数如下:

public ListTag(final String name, final Class<? extends Tag> type, final List<Tag> value);

所以基本上我对第一个字段和最后一个字段没有问题,它就像一个json对象,这个是一个列表,所以你输入名称和里面的内容,但我不明白中间的,我不明白不明白如何实例化这种对象以及我应该在其中放入什么。

有什么建议吗?我刚刚了解到?扩展 Tag 而不是 Tag,所以这不是我的问题,也不需要向我解释通用性(我希望?)

提前致谢!

--

另外,如果您愿意,我从 here 下载了 API .

最佳答案

您可以传入一个扩展 Tag 的类,例如 IntTag.classDoubleTag.class 等。

Class type 没有公共(public)构造函数,因此您无法使用典型的 new 语法实例化它。你必须依靠编译器来解析 class literals例如 IntTag.class 或通过类似 Object.getClass 的函数获取实例.

关于java - 如何实例化一个类<?扩展标签>对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50739989/

相关文章:

jquery id 与 class 的麻烦

java - 将 'asynchronous' 定义为并发是否不正确?

Java 源代码未显示(IntelliJ?)

c# - 从类调用寻呼

java - “找不到或加载主类”是什么意思?

java - 当无法泛化时,正确转换为作为参数传递的未知类型

java - 这些 setDefaultCloseOperation 语句之间的区别

Java 比较器总是将值读取为字符串

c# - 返回不同类型时是否建议使用多种方法?

java - 什么是 PECS(生产者扩展消费者 super )?