java - EBike 可以是 Bike 的子类

标签 java string types

如果我有山地自行车、公路自行车、城市自行车、电动自行车等类型的自行车,我就会参加自行车类(class)。如何将这些类型的自行车放入代码中?

public class Bike {  
    private String type;
    private String height;
    private String name;
}

最佳答案

如果各个自行车类型除了类型之外没有不同的属性,我会使用枚举:

public enum BikeType {
    MOUNTAIN, ROAD, CITY, E_BIKE;
}

在你的类(class)中(另外,高度可能不应该是字符串):

public class Bike {
    private BikeType type;
    private double height;
    private String name;
}

然后,如果您声明了全参数构造函数,则可以创建如下实例:

Bike bike = new Bike(BikeType.ROAD, 5.3, "my shiny new bike");

但是,如果您确实想使用子类,请像这样声明类:

public class Bike {
    // common parameters
}

public class EBike extends Bike {
    // eBike specific parameters
}

关于java - EBike 可以是 Bike 的子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55492757/

相关文章:

c++ - 这段代码是如何工作的,反转字符串的真正简短方法,它有效,但我不知道如何

java - 迁移到 New Places SDK 客户端不起作用

java - 如何在不从 java API 导入日期/日历的情况下将 n 天添加到 java 中的日期?

java - 有没有办法在不使用java中任何内置函数的情况下找到字符串长度?

java - 字符链表 - int indexOf(String)

postgresql - 由于 "malformed record literal"无法插入记录

java - 如何以编程方式向上或向下 View ?

java - 是否需要检查JPA中模型类的equals方法中的所有字段?

c# - 如何更改数据表中数据列的数据类型?

postgresql - 如何在 ALTER TABLE 中设置精度和比例