Java 泛型

来源:互联网 发布:网络电视怎么更新节目 编辑:程序博客网 时间:2024/06/05 05:47
 
class Person{private String name;private int age;public Person(String name,int age){this.name=name;this.age=age;}public String getName(){return this.name;}public int getAge(){return this.age;}public void show(){System.out.println(this.name+"..."+this.age);}public String toString(){return this.name+"...."+this.age;}}class Student{private String name;private int age;public Student(String name,int age){this.name=name;this.age=age;}public String  getName(){return this.name;}public int getAge(){return this.age;}public void show(){System.out.println(this.name+"...."+this.age);}public String toString(){return this.name+"..."+this.age;}}//定义泛型类,注意:泛型类里面的静态方法,不能访问类里定义的类型不确定的方法,因为泛型类要实例化以后才确定处理对象类型,而静态类则在实例化以前就可以调用 ,class Show<T>{public void show(T object){System.out.println(object);}}//定义泛型方法class Method  {public <T> void show(T obj)  //<T> 这个标记放在方法返回值的前面  {System.out.println(obj);}}//泛型类里面也可以定义泛型方法class Fan<T>{public <M> void show(M obj){System.out.println(obj);}}public class STL{public static void main(String args[]){Person person =new Person ("boy",20);Student student = new Student ("girl",20);Show<Person>show=new Show<Person>();show.show(person);Method method=new Method();method.show(new Integer(1));Fan<String> fan=new Fan<String>(); //这里将泛型类处理对象为String 而下面处理的却是Integer ,因为泛型类里面定义的是泛型方法fan.show(new Integer(1)); }} 2011/10/27  19:0:15

原创粉丝点击