本文实例讲述了Java中泛型通配符的使用方法。分享给大家供大家参考,具体如下:
一 点睛
引入通配符可以在泛型实例化时更加灵活地控制,也可以在方法中控制方法的参数。
语法如下:
泛型类名 extends T> 或 泛型类名 super T> 或 泛型类名>
? extends T:表示T或T的子类
? super T:表示T或T的父类
?:表示可以是任意类型
二 通配符在泛型类创建泛型对象中使用
1 代码
class gent {
public void test() {
System.out.println("gent");
}
}
public class testa {
public static void main( String[] args ) {
gent extends String> o; // 决定了泛型实例化对象只能是String类或它的子类
o = new gent();//正确
o.test();
//o=new gent();//错误
}
}
2 运行
gent
三 通配符在方法参数中使用
1 代码
class gent {
public void test() {
System.out.println("gent");
}
}
class supC {
public String toString() {
return "supA";
}
}
public class Bc extends supC {
String b;
public Bc( String b ) {
this.b = b;
}
public String toString() {
return "subB";
}
// 指明泛型参数必须是supC或其子类
public void test( gent extends supC> o ) {
System.out.println("Bc");
}
public static void main( String[] args ) {
Bc bc = new Bc("test");
gent oGent = new gent();
bc.test(oGent); // oGent 是supC的子类对象
}
}
2 运行
Bc
希望本文所述对大家java程序设计有所帮助。