看了Thinking in java的确收获很大,建议有了一定的java基础的人去看看,不错的,但是不要作为入门书,这样太难为情了。因为,它应该说是一种跳跃式的。
组合:简单来说就是在新的类中产生现有类的对象,它是复用现有程序代码的功能,一般用(has-a)即有一个的关系来表示。例如-----车子有轮子、车门、引擎......再自然点就是组成,可以横向来理解。继承:按照现有的类来创建新类,一般用(is-a)即是一个的关系来表示。例如-----你有一个水果类,然后你就可以用它来创建一个苹果类等,用自己的话说就是,从上而下。在学习OOP的过程中,很多都强调继承,的确,这是java特性与基石之一。那么是该用组合呢,还是继承?什么时候用呢?请问各有什么好处?