Java中的泛型
泛型的概念
所谓泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值以及参数类型。这个类型参数将在使用时(利用继承或实现这个接口,用这个类型声明变量、创建对象时)确定(即传入实际的类型参数,也称为类型实参)
在编译时就会进行类型检查,保证数据的安全
在集合中使用泛型
- 集合接口或集合类在jdk5.0时都修改为带泛型的结构
- 在实例化集合类时,可以指明具体的泛型类型
- 指明完以后,在集合类或接口中凡是定义类或接口时,
- 注意点:泛型的类型必须是嘞,不能是基本数据类型,需要用到基本数据类型的位置,拿包装类使用
- 如果实例化时,没有指明泛型的类型,默认类型是java.lang.Object
如何自定义泛型结构:泛型类、泛型接口;泛型方法
package com.haust.java;
/*自定义泛型类*/
public class Order<T> {
private String orderName;
private int orderId;
// 类的内部结构就可以使用类的泛型
T orderT;
public Order() {
}
public Order(String orderName, int orderId, T orderT) {
this.orderName = orderName;
this.orderId = orderId;
this.orderT = orderT;
}
public String getOrderName() {
return orderName;
}
public void setOrderName(String orderName) {
this.orderName = orderName;
}
public int getOrderId() {
return orderId;
}
public void setOrderId(int orderId) {
this.orderId = orderId;
}
public T getOrderT() {
return orderT;
}
public void setOrderT(T orderT) {
this.orderT = orderT;
}
@Override
public String toString() {
return "Order{" +
"orderName='" + orderName + '\'' +
", orderId=" + orderId +
", orderT=" + orderT +
'}';
}
}
//如果定义了泛型类,实例化没有指明类的泛型,则认为此泛型类型为Object类型
//要求:如果大家定义了类是带泛型的,建议在实例化时指明类的泛型
子类在继承带泛型的父类时,指明了泛型类型,则实例化时子类对象时,不在需要指明泛型。
异常类不能声明为泛型
版权归原作者 haust_允谦 所有, 如有侵权,请联系我们删除。