如何创建一个公共默认构造函数和一个超载的构造函数



我对java和一般编码非常新。我正在从事一个项目,在该项目中创建了两个接口,现在正在创建一个名为Weariclechassis的具体类,该类别实现了我的底盘接口。首先,我创建了一个名为ChassisName实例变量的字符串。现在,我需要创建一个带有以下值的默认构造函数和过载构造函数 - 具有底盘名的参数值的字符串。我已经搜索了互联网如何做两者,但是我很困惑。帮助!

以下是我到目前为止的代码。

public abstract class VehicleChassis implements Chassis{
public String chassisName;
}

您的意思是?

public abstract class VehicleChassis implements Chassis{
    public String chassisName;
    VehicleChassis() {
        chassisName = "name";
    }
    VehicleChassis(final String chassisName) {
        this.chassisName = chassisName;
    }
}

您将无法实例化此VehicleChassis,因为您已将其声明为抽象。但是,如果扩展此类,则可以使用构造函数。如果您打算这样做,请考虑声明受保护的构造函数。

如果您未在Chassis中实现所有方法,将VehicleChassis作为abstract

您可以根据需要超载构造函数。

public String chassisName;
public VehicleChassis() {
    chassisName = "No";
}
public VehicleChassis(String chassisName) {
    this.chassisName = chassisName;
}

如果您有另一个实例变量:

public VehicleChassis(String chassisName, int price) {
    this.chassisName = chassisName;
    this.price = price;
}

有关构造函数超载的更多信息,请阅读此问题答案。

您可以如下所示创建构造函数。如果实例变量更多并且不是强制性的,那么您可以使用构建器模式逐步构建对象。

 public class VehicleChassis implements Chassis {
        public String chassisName;
        public VehicleChassis() {
            // some code
        }
        public VehicleChassis(String chassisName) {
            this.chassisName = chassisName;
        }
    }

标记为抽象的类,无法直接实例化。因此,我们不需要创建构造函数和超载构造函数。

相关内容

最新更新