面试问题:
1)有一个“Paint”类和一个“Car”类,有几个子类,如Red,Blue等颜色。解释如何将颜色与汽车类分开?它有什么重要的?
2)使用面向对象的方法,如果你有一个类“Car”,那么“Paint”类如何与“Car”相关?
两者都是几乎相同的问题,只是想知道不同的观点 -
答案 0 :(得分:5)
汽车“有”油漆,我想面试官要你解释Inheritance
和Composition
。例如,Red,Blue继承自Paint,因为它们具有“是”关系,而Car有涂料,它是组合的例子。然后一些常见的后续问题是何时使用组合而不是继承,使用组合而不是继承更好,如果是,为什么等等。