1、自定义的泛型类
package com.atguigu.generic; import java.util.ArrayList; import java.util.List; /** * 自定义泛型类 * @author LiPiaoSshui */ public class Order<T> { private int orderId; private String orderName; private T t; public List<T> list = new ArrayList<T>(); public void add() { list.add(t); } public T getT() { return t; } public void setT(T t) { this.t = t; } public int getOrderId() { return orderId; } public void setOrderId(int orderId) { this.orderId = orderId; } public String getOrderName() { return orderName; } public void setOrderName(String orderName) { this.orderName = orderName; } @Override public String toString() { return "Order [orderId=" + orderId + ", orderName=" + orderName + ", t=" + t + "]"; } }
2、实例化泛型类时未使用泛型
3、实例化泛型类时有使用泛型
4、测试自定义泛型类的代码
//3.自定义泛型类 @Test public void test3() { //1.当实例化泛型类的对象时,指明泛型的类型。 //指明以后,对应的类中所有使用泛型的位置,都变为实例化中指定的泛型的类型 //2.如果我们自定义了泛型类,但是在实例化时没有使用,那么默认类型是Object类的 Order<Boolean> order = new Order<Boolean>(); order.setT(true); //输出:true System.out.println(order.getT()); order.add(); List<Boolean> list = order.list; //输出:[true] System.out.println(list); }