码迷,mamicode.com
首页 > 其他好文 > 详细

泛型类的自定义

时间:2015-06-02 18:18:34      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:public   java   

为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。

采用泛型类,完成扩展。

  例如有一个学生类


Java代码  [url=]技术分享[/url]

  • Student{  

  •   Student(){  

  •    System.out.println("I‘m a student.....");  

  •   }  

  • }  


有一个老师类


Java代码  [url=]技术分享[/url]

  • Teacher{  

  •   Teacher(){  

  •    System.out.println("I‘m a teacher.....");  

  •   }  

  • }  


定义一个泛型类Utils<Kind>

Java代码  [url=]技术分享[/url]

  • class Utils<Kind>  

  • {  

  •       private Kind k;  

  •      public void setObject(Kind k){  

  •            this.k=k;  

  •     }  

  •     public Kind getObject(){  

  •       return k;  

  •    }  

  • }  


  public  主类

Java代码  [url=]技术分享[/url]

  • public class GenericDemo{  

  •     public static void main(){  

  •       Uitls<Teacher> ut=new Utils<Teacher>();//两个泛型类,分别给定  

  •      Utils<Student> us=new Utils<Student>();//Teacher类和Student类  

  •   

  •      ut.setObject(new Teacher());  

  •      Teacher teacher=ut.getObject();//编译运行都通过  

  • //输出 I‘m a teacher。。。  

  •   

  •      us.setObject(new Student());  

  •      Student student=us.getObject();//编译运行都通过  

  • //输出 I‘m a Student。。。  

  •   

  •   

  •      ut.setObject(new Student());  

  •      Teacher teacher=ut.getObject();//直接出现异常ClassCastException,编译出错  

  •   }  

  • }  


泛型类的自定义

标签:public   java   

原文地址:http://wufanxin.blog.51cto.com/7318130/1657497

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!