java 创建类带泛型_java-创建泛型类列表
我有一个实用程序方法,可以从某些对象中创建一个元素列表:
public static final List list(T t) {
final List rv = new ArrayList<>();
rv.add(t);
return rv;
}
我也有一个接受类型为List< Class>的参数的方法.因此,我必须创建该类型的对象.这是我尝试做的事情:
final Class> aClass = Integer.class;
final List> trivialListOfClasses = list(aClass);
……这失败了:
[javac] /some/path/Foo.java:41: error: incompatible types
[javac] final List> trivialListOfClasses = list(aClass);
[javac] ^
[javac] required: List>
[javac] found: List>
[javac] where CAP#1 is a fresh type-variable:
[javac] CAP#1 extends Object from capture of ?
[javac] 1 error
完成上述任务的正确方法是什么?我了解有关Java泛型不变的部分,但是到底发生了什么?
解决方法:
能够在Javac 1.8.0_144上使用-source 7 -target 7进行复制.
如果您只打算从列表中删除东西,那么一件有用的事情就是使用?扩展Class
Class> aClass = Integer.class;
List extends Class>> trivialListOfClasses = list(aClass);
Class> bClass = trivialListOfClasses.get(0); // works
// trivialListOfClasses.add(String.class); // doesn't work, though
也可以在列表调用中手动提供通用类型:
Class> aClass = Integer.class;
List> trivialListOfClasses = Util.>list(aClass);
Class> bClass = trivialListOfClasses.get(0); // works
trivialListOfClasses.add(String.class); // also works
似乎编译器无法调和List< Class>的通配符类型.由列表本身返回的那个.
标签:generics,java-7,java
来源: https://codeday.me/bug/20191025/1928826.html
java 创建类带泛型_java-创建泛型类列表相关推荐
- java反射类带构造函数_java中反射类的加载和构造函数
我们先创建了一个Person类 package reflect; public class Person { public String name = "zhangsan"; pu ...
- Python基础笔记_Day12_Python元类、type动态创建类、Python动态创建方法、Python运算符、Python发邮件、短信
Day12_Python元类.type动态创建类.Python动态创建方法.Python运算符重载.Python发邮件.短信 12.01_Python语言基础(类对象)(熟悉) 12.02_Pytho ...
- java 类 方法 带泛型_java中的泛型类和泛型方法
1.泛型是什么? 泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类. 可以在集合框架(Collection fram ...
- java建立类的思想_JAVA类和对象创建
面向对象 学习目标: 理解面向对象的编程思想 理解类与对象的关系 如何创建类与对象 方法重载 一:什么是面向对象编程(OOP) 面向对象编程(Object Oriented Programming,O ...
- java创建数组的方式_Java创建数组的几种方式总结
1.一维数组的声明方式: type[] arrayName; 或 type arrayName[]; 附:推荐使用第一种格式,因为第一种格式具有更好的可读性,表示type[]是一种引用类型(数组)而不 ...
- java创建文件夹代码_Java创建文件夹及文件实例代码
package com.xhkj.util; import java.io.File; import java.io.IOException; public class CreateFileUtil ...
- java对类对象初始化_Java类和对象初始化
Java类和对象初始化Tag内容描述: 1.解析 Java 类和对象的初始化过程 由一个单态模式引出的问题谈起 北京高伟达西南分软 Java EE 软件工程师 三年 Java EE 项目经验 行业方向 ...
- java流类图结构_java I/O 流总结
一.java 流操作有关的类和接口: 类 说明 Fil ...
- java流类图结构_java学习之IO流(学习之旅,一)
个人在学习IO流的时候看到如下所示java 流类图结构的时候,我的感想是,这么多··处于蒙的状态. Java流类图结构 这么多,没有分类不好学,那我们就慢慢一口一口的吃,这样每天学习一点就好了,其实很 ...
最新文章
- spi iic和串口的区别_GMII、SGMII和SerDes的区别和联系
- MySQL重要概念图解(重要)
- 线程互斥与同步 在c#中用mutex类实现线程的互斥_Golang 并发编程与同步原语
- linux C++ 多线程使用pthread_cond 条件变量
- 重新添加MySQL服务
- Java基础学习总结(131)——项目开发中真的有必要使用Lombok插件么?
- 【安装记录】安装 pyzmq ==19.0.2 报错记录
- 侠客行,我是谁,谁是我
- python求角度公式_Python 计算任意两向量之间的夹角方法
- 10天竟然只写了一行代码,谁的锅?
- 应知应会的Word图片技巧(转)
- 电脑程序在计算机丢失怎么办,电脑中dll文件丢失怎么恢复?计算机中丢失dll文件修复方法...
- 夜神模拟器之burp抓包
- 关键词提取有哪些方案?刘志远回答
- Calendar的DAY_OF_MONTH, DAY_OF_YEAR, DATE的区别
- 小学生用计算机的方法,多种教学方法在小学信息技术教学中的使用
- Java遍历一个类的所有属性和值
- 如何提高团队管理能力7
- 最优化学习 算法收敛性
- 《金2》个评 第10版
热门文章
- scala读取数据从文件或者其他url中
- mysql数据库设置索引 以下_如何设置MySQL数据库表的索引总长度
- LeetCode 304. 二维区域和检索 - 矩阵不可变(动态规划)
- redis源码剖析(5):基础数据结构inset
- 泛微oa系统什么框架_泛微移动办公OA系统走进江苏国曜信息科技有限公司
- excel : 如何快速跳到某一行
- Android Gradle Task-中文
- 【vue】 生命周期
- mysql备份与还原,增量备份;使用ibd和frm文件恢复数据
- UVA10267 Graphical Editor【模拟】