java - 只能在java中创建一个扩展类,其他的显然必须在自己的文件中
问题描述
我一直在尝试从一个超类中创建三个不同的扩展类。问题是只有第一个扩展类可以正常工作,而其他两个在我命名它们时出错,并且它说它们应该在自己的文件中。我环顾四周,看看是否有人有类似的问题,但没有完全像这样的问题。正在工作的扩展类是第一个名为“Smycken”的类。
这是代码:
abstract public class Vardesaker
{
private String name;
double value;
public Vardesaker(String name, double value)
{
this.name = name;
this.value = value;
}
public String getName()
{
return name;
}
abstract public double getValue();
}
class Smycken extends Vardesaker
{
private int adelstenar;
private String material;
public Smycken(String name, double value, int adelstenar, String material)
{
super(name, 0);
this.adelstenar = adelstenar;
this.material = material;
}
public int getadelstenar()
{
return adelstenar;
}
public String getMaterial()
{
return material;
}
public double getValue()
{
if(material.equalsIgnoreCase("guld"))
{
double sum = 2000 + (500*adelstenar);
value = sum*1.25;
}
else
{
double sum = 700 + (500*adelstenar);
value = sum*1.25;
}
return value;
}
}
public class Aktier extends Vardesaker
{
private double kurs;
private int amount;
public Aktier (String name, double value, int amount, double kurs)
{
super(name, 0);
this.kurs = kurs;
this.amount = amount;
}
public double getKurs()
{
return kurs;
}
public int getAmount()
{
return amount;
}
public double getValue()
{
double sum = (int) (amount*kurs);
value = sum*1.25;
return value;
}
}
public class Apparater extends Vardesaker
{
private double price;
private int slitage;
public Apparater(String name, double value, double price, int slitage)
{
super(name, 0);
this.price = price;
this.slitage = slitage;
}
public double getPrice()
{
return price;
}
public int getSlitage()
{
return slitage;
}
public double getValue()
{
double sum = price*(slitage/10);
value = sum*1.25;
return value;
}
}
解决方案
有一个简单的规则 - 1 个公共类型(类、接口、枚举)= 1 个 java 文件
推荐阅读
- python-3.x - 接受输入直到条件在python中完成
- sharepoint - 从包含许多公式的非常广泛的 SharePoint Online 列表中删除所有项目
- react-native - React Navigation:当按下图标时,如何防止使用 Material Bottom Tab Navigator 导航到未安装的选项卡屏幕?
- python - 套接字服务器在多线程程序中崩溃
- zerobrane - 项目 user.lua 要求仅针对项目特定模块的语句
- angularjs - 成功登录 AzureAD 后无法在 angularJS 中获取令牌/msal 对象
- javascript - 使用非常旧的 React 版本将 React 16 组件导入项目
- javascript - HTML 输入元素的 Jquery
- python - __init__() 缺少 1 个必需的位置参数“arg”kivy 错误
- python - 如何检查字符串列是否包含子字符串,如果为真则返回行数据?