泛型使用理念:集合存储的都是对象,存入基本数据类型编译也能通过,会造成安全隐患
泛型使用好处:1.将运行时可能出现的类型转换异常ClassCastException转移到编译时期,尽早处理
2,避免强转
通过<>存放要操作的引用数据类型
泛型类:当引用数据类型不确定时,将泛型定义在类上,整个类有效。当对象建立时传入具体引用数据类型,那类型就固定了
泛型方法:为了让不同方法操作不同类型,可以将泛型定义在方法上<T t>void
当泛型类中有泛型方法时,以对象调用泛型方法时传入的类型为主
特别:静态方法不可以访问类上定义的泛型,只能在静态方法上定义泛型,方式static<T t>
?占位符,可代替任何类型
?extends p 可以接受p的类型和p的子类型。上限
?super e 可以接受e的类型和e的父类型。下限
|
|