Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我应该为bean使用继承吗?_Java_Oop_Inheritance - Fatal编程技术网

Java 我应该为bean使用继承吗?

Java 我应该为bean使用继承吗?,java,oop,inheritance,Java,Oop,Inheritance,我有一个叫做Plane的类,只有getter和setter public static class Plane { String type = // [Commercial, Fighter] String numberOfWheels String manufacturer String numberOfEngines // getters and setters. } 但是现在有一个要求出现了,那就是我们需要一种新型的飞机,它是两栖的,具有商用/战斗机的所有

我有一个叫做Plane的类,只有getter和setter

public static class Plane {
   String type = // [Commercial, Fighter]
   String numberOfWheels
   String manufacturer
   String numberOfEngines

   // getters and setters.
}
但是现在有一个要求出现了,那就是我们需要一种新型的飞机,它是
两栖的
,具有
商用/战斗机
的所有属性,但增加了另一个领域,称为
弦浮筒

现在,
浮筒
将不会被两栖飞机以外的任何飞机使用,即值为空


我应该向平面类添加字段还是进行继承?

听起来像是继承的典型用例

public class AmphibiousPlane extends Plane {

     private String pontoons;

     // getter, setter for pontoons field
}
您给出了原因:普通飞机没有浮筒,因此浮筒不属于飞机模型


类型可以是
枚举
,顺便说一句。

听起来像是继承的典型用例

public class AmphibiousPlane extends Plane {

     private String pontoons;

     // getter, setter for pontoons field
}
您给出了原因:普通飞机没有浮筒,因此浮筒不属于飞机模型


类型可以是
枚举
,顺便说一句。

您希望
浮筒
能够容纳哪些类型的字符串值,或者应该是
布尔值
?如果只有一个(可能是可枚举的)属性是不同的,那么您可能不需要使用继承。有时继承是多余的,但在这种情况下,我会选择继承。如果您有其他具有共同两栖特性的车辆(例如汽车或气垫船),则可以将
两栖
设置为一个界面。您希望
浮筒
能够容纳哪些类型的字符串值,或者应该是
布尔值
?如果只有一个(可能是可枚举的)属性是不同的,那么您可能不需要使用继承。有时继承是多余的,但在这种情况下,我会选择继承。如果您有其他具有共同两栖特性的车辆(例如汽车或气垫船),则可以将
两栖
作为一个界面。