看到第六章了, 心情越来越激动,不由写份BLOG,抒发下感情,think in java--一本神书我一个朋友如实说,确实我发现了很多新的东西,我以前对JAVA只是了解他的一个大体框架,并没有深入的去学习,这本书充实了我,对其中的一些概念,讲的如此透彻清晰,就如同白话一般,我本来对E文不感兴趣的,现在我竟然也能配合他的E文版加金山快译,翻译几段,我有了学习英语的兴趣,每看完他写的code如果能够读懂或者花了一段时间读懂,是件非常愉快的事情,他让我增加了自信!后面的练习题必须是要做的,只有做了,才感觉真正收获了知识,外国人写的课题比较有趣!从昨天晚上看到了Reusing Class(复用类),今天还差3页没看完,最后这段讲的final关键字用法,前部分讲解的是组合技术与继承组合技术下面的代码可以说明问题:// www.BruceEckel.com. See copyright notice in CopyRight.txt.
class Engine { public void start() {} public void rev() {} public void stop() {}}
class Wheel { public void inflate(int psi) {}}
class Window { public void rollup() {} public void rolldown() {}}
class Door { public Window window = new Window(); public void open() {} public void close() {}}
public class Car { public Engine engine = new Engine(); public Wheel[] wheel = new Wheel[4]; public Door left = new Door(), right = new Door(); // 2-door public Car() { for(int i = 0; i < 4; i++) wheel[i] = new Wheel(); } public static void main(String[] args) { Car car = new Car(); car.left.window.rollup(); car.wheel[0].inflate(72); }} 在一个类中创建另一个类对象的引用,然后直接使用来自这个引用的接口,这样的代码看起来细腻紧凑有很强的从属关系就象书中说的(has-a)关系我是这样理解组合技术的。当然很肤浅,有高手在给予补充,继承就是从一个基类派生一个新类,这个新类,可以使用基类中所有的接口,还可以重载,添加一些新的方法,当然在派生的新类代码中第一件事,就是在构造器中Super.一下基类的构造器,否则,他什么都不能做就写到这了,不浪费时间了,看书....
