Java 在类构造函数中使用了枚举,类中的方法无法识别引用变量
我正在学习CSIS 1410类,作为任务的一部分,我需要创建一个枚举,Voltage。然后,我必须创建一个使用枚举作为参数的类,但是当尝试使用参考变量voltage小写v时,它会给我错误电压无法解析为变量。 以下是枚举:Java 在类构造函数中使用了枚举,类中的方法无法识别引用变量,java,inheritance,enums,Java,Inheritance,Enums,我正在学习CSIS 1410类,作为任务的一部分,我需要创建一个枚举,Voltage。然后,我必须创建一个使用枚举作为参数的类,但是当尝试使用参考变量voltage小写v时,它会给我错误电压无法解析为变量。 以下是枚举: public enum Voltage { V110, V220, DUAL; } 下面是使用所述枚举的类 public class DeskPhone extends Phone { public boolean connected; protec
public enum Voltage
{
V110, V220, DUAL;
}
下面是使用所述枚举的类
public class DeskPhone extends Phone
{
public boolean connected;
protected DeskPhone(String modelArg, Dimensions dimenstion, Voltage voltage) //enum as parameter
{
super(modelArg, dimenstion);
}
public void plugIn()
{
connected = true;
}
public void unPlug()
{
connected = false;
}
public boolean isConnected()
{
return connected;
}
@Override
public String toString()
{
if(connected == false)
{
return super.toString() + " " + voltage + " not connected"; //results in error
}
return super.toString() + " " + voltage + " connected";
}
为什么我不能存储在voltage变量中传递的构造函数并在toString语句中使用它?因为构造函数参数只在构造函数中可见 您需要将它们绑定到类字段,以便能够在函数中使用它们: 也可以考虑使用Lombok来减少样板 公共布尔连接; 专用电压; 受保护的DeskPhoneString模型参数、尺寸和电压 { 超模,迪曼斯顿; 该电压=电压; }
因为构造函数参数仅在构造函数内部可见 您需要将它们绑定到类字段,以便能够在函数中使用它们: 也可以考虑使用Lombok来减少样板 公共布尔连接; 专用电压; 受保护的DeskPhoneString模型参数、尺寸和电压 { 超模,迪曼斯顿; 该电压=电压; }
问题是,你们从来并没有声明过电压场,你们只把它作为参数传递给构造函数
public class DeskPhone extends Phone
{
public boolean connected;
// Here we declade voltage as field
public Voltage voltage;
protected DeskPhone(String modelArg, Dimensions dimenstion, Voltage voltage) //enum as parameter
{
super(modelArg, dimenstion);
// Here we set field value
this.voltate = voltage;
}
...
问题是,你们从来并没有声明过电压场,你们只把它作为参数传递给构造函数
public class DeskPhone extends Phone
{
public boolean connected;
// Here we declade voltage as field
public Voltage voltage;
protected DeskPhone(String modelArg, Dimensions dimenstion, Voltage voltage) //enum as parameter
{
super(modelArg, dimenstion);
// Here we set field value
this.voltate = voltage;
}
...
你能不能也添加Phone的类定义?你能不能也添加Phone的类定义?非常感谢!虽然现在我觉得特别傻哈哈。我正在阅读一个UML图,但我没有看到关联箭头上的-电压,所以我试着按照这一点到一个t。非常感谢!虽然现在我觉得特别傻哈哈。我正在阅读一个UML图,但我没有看到关联箭头上的-电压,所以我试着按照这一点到一个t。