java基础 泛型类的定义


泛型的定义与普通类定义相比,首先在类名后增加了由尖括号标识的类型变量,一般用T表示。T可以在泛型中的任何地方使用。对于泛化接口也是这样定义。

我们来看看普通类Box以及Box的泛型的代码:

(1)普通类Box的定义

 


public class MyBox{
private Object object;
public void add(Object object) {
this.object = object;
}
public object get() {
return object;
}
}

 

(2)Box类的泛型定义

public class MyBox<T>{
private T t;
public void add(T t) {
this.t = t;
}
public T get() {
return t;
}
}

在MyBox类的泛型定义中,将类声明中的“public class MyBox”改为“public class MyBox<T>”,并且把MyBox类体中所有的Object都用T进行替换,从而将MyBox定义为能存放各种确定类型对象容器的抽象类型

package practice;


public class MyBoxTest {

public static void main(String[] args) {
// TODO Auto-generated method stub
MyBox<String> aBox = new MyBox<String>();
aBox.add(new String("阿"));
String i = aBox.get();
System.out.println(i);
}
}

输出:

  阿

 

 

public class MyBoxTest {

public static void main(String[] args) {
// TODO Auto-generated method stub
MyBox<Integer> aBox = new MyBox<Integer>();
aBox.add(newInteger("2018"));
Integer i = aBox.get();
System.out.println(i);
}
}

输出:

  2018


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM