java学习笔记016 泛型、流

###### 1.泛型 Generic since 1.5

标示元素类型的参数,泛型不能是基本数据类型
泛型不同的引用不能相互赋值
静态方法不能使用泛型,因为实例化类的时候要指定泛型,但是静态方法的加载在实例化之前
1)集合中使用泛型
eg:
Iterator iterator = set.iterator();
ArrayList list = new ArrayList();
ArrayList list = new ArrayList<>(); //简化写法
Set<Map.Entry<String, Integer>> set = map.entrySet();
Comparable,Comparator

2)自定义范型结构
泛型类、泛型接口
//定义类的时候带了泛型,使用的时候最好指定泛型类型,不指定默认Object类型,但有所不同
public class Hello{
T t; //指定类的内部结构
}
public class HelloWorld extends Hello{
//创建子类HelloWorld的对象时不必再指定泛型了
}
public class HelloWorld extends Hello{
//
}
泛型方法
eg:
T[] toArray(T[] t);
List method(T[] t){}
泛型方法在调用时,指明泛型参数的类型
泛型方法可以是静态的,这里的泛型参数是在调用方法时确定的,而不是类的实例化的时候调用
static List method(T[] t){}

3)泛型在继承方面的体现
A extends B
1 A 与 B | List 与 List
//多态在数组方面的体现
Object[] objs = null;
String[] strs = null;
objs = strs;
//以下两个List不具有子父类关系
List

posted @ 2022-08-30 20:12  香菇无盐  阅读(59)  评论(0)    收藏  举报