Java理论与实践伪typedef反模式.doc

Java理论与实践伪typedef反模式.doc

Java 理论与实践: 伪 typedef 反模式 扩展不是类型定义 将泛型添加到 Java? 语言中增加了类型系统的复杂性,提高了许多变量和方法声明的冗长程度。因为没有提供 “typedef” 工具来定义类型的简短名称,所以有些开发人员转而把扩展当作 “穷人的 typedef”,结果收到了良好的效果。在这个月的 Java 理论与实践 中,Java 专家 Brian Goetz 解释了这个 “反模式” 的限制。 对于 Java 5.0 中新增的泛型工具,一个常见的抱怨就是,它使代码变得太冗长。原来用一行就够的变量声明不再存在了,与声明参数化类型有关的重复非常讨厌,特别是还没有良好地支持自动补足的 IDE。例如,如果想声明一个 Map,它的键是 Socket,值是 FutureString,那么老方法就是: Map socketOwner = new HashMap(); 比新方法紧凑得多: MapSocket, FutureString socketOwner = new HashMapSocket, FutureString();  当然,新方法内置了更多类型信息,减少了编程错误,提高了程序的可读性,但是确实带来了更多声明变量和方法签名方面的前期工作。类型参数在声明和初始化中的重复看起来尤其没有必要;Socket 和 FutureString 需要输入两次,

文档评论(0)

1亿VIP精品文档

相关文档