在Java中,组合和继承是两种不同的面向对象编程概念,它们可以帮助我们构建更加灵活和可维护的代码。
继承
继承是一种面向对象编程的基本概念,它允许一个类(子类)继承另一个类(父类)的属性和方法。在Java中,使用关键字extends
来实现继承。例如:
----- ------ - ------ ----- ------ ---- -------------- ----- - --------- - ----- - ------ ------ --------- - ------ ----- - - ----- --- ------- ------ - ------ ---- ------ - ------------------------- -------- - -
在上面的例子中,Dog
类继承了Animal
类的属性和方法。子类可以访问父类的非私有成员,并且可以重写父类的方法。
组合
组合是一种将多个对象合并成一个整体的方式。在Java中,我们可以通过在一个类中创建另一个类的实例来实现组合。例如:
----- ------ - ------ ---- ------- - -------------------------- ---------- - - ----- --- - ------- ------ ------ ------- ------ ------- ------ ---------- ------ - ---------- - ------ ----------- - --- --------- - ------ ---- ------- - --------------- ----------------------- ---------- - -
在上面的例子中,Car
类包含一个Engine
类的实例,通过组合的方式实现了车辆的启动功能。
继承和组合都是面向对象编程中重要的概念,可以根据实际需求选择合适的方式来设计和构建代码。