长沙java培训
达内长沙芙蓉路中心

18487146383

热门课程

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

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

长沙达内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培训机构】长不大的程序员有7个坏习惯

【长沙Java培训机构】程序员挑选合适的公司策略

长沙java培训机构 初入职场,对一个程序员来说最重要的是什么?

长沙java培训机构 程序员为什么睡眠不好?答案在这里!

选择城市和中心
贵州省

广西省

海南省

扫一扫

了解更多干货