泛型

泛型作用

1泛型为不定类型即可以是任意类型

如:

class Point<A>{//A为一种未知类型(只是名称)
  private A x ;//Object型可以指向任意类型的变量
  private A y;
  public A getX() {
      return x;
  }
  public void setX(A x) {
      this.x = x;
  }
  public A getY() {
      return y;
  }
  public void setY(A y) {
      this.y = y;
  }
  
}
public class Genericdemo01 {

  public static void main(String[] args) {
Point<String>p=new Point<String>();//<需要什么类型设定什么类型>
p.setX("我的家乡是安徽");
p.setY("我的家乡是辽宁");
System.out.println(p.getX()+"  "+p.getY());
  }

}
    

泛型构造方法

    private T name;

    public A(T _name) {// 泛型的构造方法
        name = _name;
    }

    public T getName() {
        return name;
    }

    public void setName(T name) {
        this.name = name;
    }
}

public class Generic {
    public static void main(String[] args) {
        A<String> a = new A<String>("String类型");
        A<Integer> b = new A<Integer>(500);
        A<String> c = new A<String>("再创建");
        System.out.println(a.getName());
//a,b,c分别是不同对象,因此他们的值互不影响
        System.out.println(b.getName());
        System.out.println(c.getName());
    }
}

多个泛型的定义

    private A take;
    private B key;
    public A getTake() {
        return take;
    }
    public void setTake(A take) {
        this.take = take;
    }
    public B getKey() {
        return key;
    }
    public void setKey(B key) {
        this.key = key;
    }
}
public class GEnericdemo03 {

    public static void main(String[] args) {
Gen<String,Integer>g=new Gen<String,Integer>();
/*类型定义顺序决定了下面对象类型
 * 可以创建一个泛型,但必须多次声明创建对象
 * 
 */
g.setTake("String类型");
g.setKey(900);
System.out.println("take:  "+g.getTake()+"  "+"key :"+g.getKey());
    }

}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容