摘要: 泛型的上下限(?: 泛型的通配符) ? super Integer 只能接受Integer或者Integer的父类类型的集合对象 下线? extends Number 只能接受Number或者Number的子类类型的集合对象 上限 阅读全文
posted @ 2018-05-06 19:18 江小白鞋 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 泛型接口的定义格式: interface 接口名<声明自定义泛型>{ }泛型接口要注意的事项: 1.接口上自定义泛型的具体数据类型是在实现一个接口的时候指定的 2.在接口自定义的泛型如果在实现接口的时候没有指定具体的数据类型,那么默认为Object类型如果我们在实现接口的时候,任然不明确自己目前要操 阅读全文
posted @ 2018-05-06 18:36 江小白鞋 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 泛型类的定义格式: class 类名<声明自定义泛型>{ }泛型类要注意的事项: 1.在类上自定义泛型的具体数据类型是在使用该类的时候创建对象的时候确定的 2.如果一个类在类上已经声明了自定义泛型,如果使用该类创建对象的时候没有指定泛型的具体数据类型,那么默认为Object类型 3.如果类中自定义泛 阅读全文
posted @ 2018-05-06 18:04 江小白鞋 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 自定义泛型:自定义泛型就是一个数据类型的占位符或者是一个数据类型的变量方法上自定义泛型: 修饰符 <声明自定义的泛型>返回值类型 函数名(使用自定义泛型){ //代码块 }例如: public <T>String func(T t){ }在泛型中不能使用基本数据类型,如果使用基本数据类型,那么就使用 阅读全文
posted @ 2018-05-06 17:30 江小白鞋 阅读(410) 评论(0) 推荐(0) 编辑
摘要: 泛型集合: 语法 ArrayList<String> list = new ArrayList<String>() 尖括号里面表示的是集合所能存储的数据类型泛型集合的好处: 1.将运行时的异常提前至了编译时(比如:强转失败,如果我们添加了类型,那么不合法的数据就添加不进去了) 2.避免了无所谓的强制 阅读全文
posted @ 2018-05-06 16:52 江小白鞋 阅读(119) 评论(0) 推荐(0) 编辑