摘要:
泛型是Java SE 5.0中引入的一项特征,自从这项语言特征出现多年来,我相信,几乎所有的Java程序员不仅听说过,而且使用过它。关于Java泛型的教程,免费的,不免费的,有很多。我遇到的最好的教材有:The Java TutorialJava Generics and Collections, by Maurice Naftalin and Philip WadlerEffective Java中文版(第2版), by Joshua Bloch.尽管有这么多丰富的资料,有时我感觉,有很多的程序员仍然不太明白Java泛型的功用和意义。这就是为什么我想使用一种最简单的形式来总结一下程序员需要知 阅读全文
摘要:
---------------------------------------------the brilliant division line--------------------------------------------------------------------------------------“为什么说实现了Iterable接口的集合必须提供一个称为iterator的方法,该方法返回一个Iterator类型的对象。”没有别的原因,原因只有一个,就是因为Iterable接口的定义如下:1 package java.lang;2 3 import java.util.Iter 阅读全文
摘要:
extends是继承父类,implements是实现接口。java中只要类不是声明为final或者定义为abstract就能被继承。java中不支持extends(继承)多个类,但是可以implements(实现)多个接口,这一点和C#是一样的,比如:class A extends B implements C,D,E(貌似有个明显的错误。。。) 阅读全文
摘要:
迭代器(Iterator) 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。 for/while循环这两种使用索引进行遍历的方式,都必须事先知道集合的内部结构,访问代码和集合本身是紧耦合,无法将访问逻辑从集合类和客户端代码中分离出来,每一种集合对应一种遍历方法,客户端代码无法复用。迭代器则降低了耦合度,把访问逻辑从不同类型的集合类中抽象出来,从而避免向客户端暴露集合的内部结构。 Iterator是个接口,定义如下 public interface Iterator { boolean hasNext(); T nex... 阅读全文