/* 泛型类,当类中要操作的引用数据类型不确定时(基本数据类型不能), 早期定义Object来完成扩展,泛型类定义的泛型,在整个类中有效,如果被方法使用, 在建立泛型类对象的时候,指定类型,所有的泛型操作类型已确定。如果让不同方法可以使用不同类型, 可以将泛型定义在方法上 */ class Utils<QQ> { private QQ q; public void setobject(QQ qq) { this.q = qq; } public QQ getObject() { return q; } public void show(QQ q) { System.out.println("show:" + q); } public void print(T q) { System.out.println("print:" + q); } //泛型定义在方法上,此时类就不能定义成泛型 public <QQ> void print(QQ q) { } } class GenericDemo { public static void main(String[] args) { Utils<String> p =new Utils<String>(); p.show("hah"); p.print("hal"); } }