课程咨询 :18487146383

  • Java 中泛型的开发自己的泛型类

    发布:长沙Java培训      来源:达内新闻      时间:2016-07-22

  • 长沙达内java培训老师知道在java中泛型的全面解析开发自己的泛型类这项课程也是非常重要的。

    泛型类与一般的Java类基本相同,只是在类和接口定义上多出来了用<>声明的类型参数。一个类可以有多个类型参数,如MyClass<X, Y, Z>。每个类型参数在声明的时候可以指定上界。所声明的类型参数在Java类中可以像一般的类型一样作为方法的参数和返回值,或是作为域和局部变量的类型。但是由于类型擦除机制,类型参数并不能用来创建对象或是作为静态变量的类型。考虑下面的泛型类中的正确和错误的用法。

    class ClassTest<X extends Number, Y, Z> {   

    private X x;   

    private static Y y; //编译错误,不能用在静态变量中   

    public X getFirst() {

    //正确用法       

    return x;   

    }   

    public void wrong() {       

    Z z = new Z(); //编译错误,不能创建对象   

    }

    }

    达内java培训机构的老师说在使用泛型的时候可以遵循一些基本的原则,从而避免一些常见的问题。

    长沙达内java培训老师说过在代码中避免泛型类和原始类型的混用(Effective Java中建议不要在代码中使用原始类型)。比如List和List不应该共同使用。这样会产生一些编译器警告和潜在的运行时异常。当需要利用JDK 5之前开发的遗留代码,而不得不这么做时,也尽可能的隔离相关的代码。在使用带通配符的泛型类的时候,需要明确通配符所代表的一组类型的概念。由于具体的类型是未知的,很多操作是不允许的。泛型类最好不要同数组一块使用。你只能创建new List<?>[10]这样的数组,无法创建new List[10]这样的。这限制了数组的使用能力,而且会带来很多费解的问题。因此,当需要类似数组的功能时候,使用集合类即可。不要忽视编译器给出的警告信息。

上一篇:Java 中泛型的类型系统

下一篇:java泛型为什么需要定义和赋值?

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:7月31日

Java--零基础业余班

Java--零基础业余班

开班日期:7月31日

Java--大数据全日制班

Java--大数据全日制班

开班日期:7月31日

Java--大数据业余制班

Java--大数据业余制班

开班日期:7月31日

  • 网址:http://cs.java.tedu.cn     地址:长沙市开福区芙蓉中路一段 476 号建鸿达现代城 9 楼
  • 课程培训电话:18487146383     全国服务监督电话:400-111-8989
  • 服务邮箱 tousu@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56