赛迪网 > IT技术 Java > 技术动态
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

Java语言深入:java泛型-关于Java的类

发布时间:2007.12.20 04:54     来源:赛迪网    作者:sheldonsun

对类的泛型, 我们看一下例子:
public class Box {
    private T t;
    
    private void add(T t) {
        this.t = t;
    }
    
    public T get() {
        return t;
    }
    
     public static void main(String[] args) {
        Box boxInt = new Box();
        boxInt.add(1);
        Integer intResult = boxInt.get();
        
        Box boxStr = new Box();
        boxStr.add("Test");
        String strResult = boxStr.get();
                
        System.out.println("Integer Result : " + intResult);
        System.out.println("String Result : " + strResult);
    }
}
运行结果:

Integer Result : 1
String Result : Test

是不是很有意思, 我们写了一个类, 但这个类的类型却不适固定的, 他即可以为String, 又可以为Integer, 可以为任意定义的类型(非primitive)。

简单解释一下, T就是type, java定义的一个泛型的概念, 即不适关键字, 也不适类, 可以适应任何类型!e.g.:
当我们传入String类型的时候, 那么T的类型就是String, 如果String strResult = boxStr.get(); 被替换成Integer strResult = boxstr.get();就会报错, 因为类型不匹配。这样的好处就是可以再代码中发现错误。


这样的代码再我们日常编码中比较少见, 我们比较常用的只是对Collection类的一些泛型使用。但是再一些框架程序中, 我们经常可以看到这样编程的影子! 如easyMock等。 
    (责任编辑:包春林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 初学Servlet总结,希望对大家有所帮助 (12-19) · Web Services&XML:利用DOM读取XML文件 (12-19)
· JAVA语言深入:java中获取系统属性的方法 (12-19) · JAVA基础:HTML中javascript 实现的排序 (12-19)
· JAVA入门:不建议初学者使用Java Enum (12-19) · 浅谈关于软件制造还是服务的一点点感想 (12-19)
· 浅谈Java中通信机制及与C/C++ API的集成 (12-19) · J2SE综合:Interface与Object之间关系问题 (12-19)
· Java中String类型的参数传递问题的解析 (12-19) · J2EE综合:看JAVA设计模式之事务处理 (12-19)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 中小企业网站建设存在弊端 手机实名推波助澜
· CIO应如何克服三个关键错误信念 CIO委屈定理
· 五条黄金准则能够让CIO巧妙加薪 CIO焦虑调查
· 网上书店解决方案 深圳边检指挥中心ITSM项目
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统