我可以创建一个已经是另一个类的扩展的类的扩展吗?

时间:2014-11-11 17:57:30

标签: java class extends

我有一个名为Car的课程,以及一个名为Mazdamx5的Car的扩展。我可以创建一个扩展包含Car属性的Mazdamx5的类,但是还包含Mazdamx5的修改或覆盖属性,或者这只会引起并发症吗?哦,是的,忘了重要的一部分。我如何使用Car和Mazdamx5在与新扩展不同的包装中完成所有这些操作?通过导入?

2 个答案:

答案 0 :(得分:2)

你当然可以拥有这样的类层次结构,但你应该更仔细地考虑你的设计含义。在很多情况下,深度嵌套这样的继承并不是必需的。

如果您希望每个类都有共享字段,请使用protected代替private进行声明。

这完全合法:

public class Car {

}

public class Mazdamx5 extends Car {

}

public class SomeOtherCar extends Mazdamx5 {

}

答案 1 :(得分:0)

试一试。完全有效创建另一个扩展Mazdamx5的类。

我提供了代码示例

class Car{
     void carDrive() {
         S.O.P("car drive");
     }
}
class Mazdamx5 extends Car{
      void drive() {
         S.O.P("drive 2");
       }
  }
 class Car2 extends Mazdamx5 {
      void drive() {
          S.O.P("Car 2 drive");
       }
 }

在这种情况下,此类Car2扩展Mazdamx5,覆盖Mazdamx5的方法属性(驱动方法),以及car(carDrive)的contins方法属性