Java 抽象类错误:应为类、接口或枚举
我在抽象类中遇到了这个相当奇怪(但在stackoverflow中相当常见)的问题。我试图实现这种层次结构: 抽象形状、类圆、类矩形、类正方形 圆形和矩形继承自抽象形状,正方形继承自矩形。我还创建了一个ShapeContainer类,其中包含一个ArrayList和几个方法。我还添加了一个TestShapeContainer类来测试这些特性。下面是相关的代码(因为有很多代码,我会尽量把它们放在相关的地方): 抽象形状:Java 抽象类错误:应为类、接口或枚举,java,oop,inheritance,abstract,Java,Oop,Inheritance,Abstract,我在抽象类中遇到了这个相当奇怪(但在stackoverflow中相当常见)的问题。我试图实现这种层次结构: 抽象形状、类圆、类矩形、类正方形 圆形和矩形继承自抽象形状,正方形继承自矩形。我还创建了一个ShapeContainer类,其中包含一个ArrayList和几个方法。我还添加了一个TestShapeContainer类来测试这些特性。下面是相关的代码(因为有很多代码,我会尽量把它们放在相关的地方): 抽象形状: public abstract Shape { public double
public abstract Shape
{
public double getArea();
public String toString();
}
错误消息:
Error at Shape.java Error: class, interface, or enum expected (lines: 1, 3, 5, 6) at abstract Shape
类SHAPECONTAINER:
import java.util.ArrayList;
public class ShapeContainer
{
// PROPERTIES //
private ArrayList<Shape> container;
// CONSTRUCTORS //
public ShapeContainer()
{
container = new ArrayList<>();
}
// METHODS //
public void add(Shape s)
{
container.add(s);
}
public double getArea(int index)
{
return container.get(index).getArea();
}
public int getSize()
{
return container.size();
}
}
import java.util.ArrayList;
公共类形状容器
{
//性质//
私有ArrayList容器;
//建设者//
公共形状容器()
{
container=newarraylist();
}
//方法//
公共空白添加(形状s)
{
容器。添加(s);
}
公共双getArea(整数索引)
{
返回container.get(index.getArea();
}
公共int getSize()
{
返回容器.size();
}
}
我在圆、矩形和正方形中有相应的getArea和toString方法
我遗漏了什么?任何帮助都将不胜感激 您忘记了
类
关键字:
public abstract class Shape {
public double getArea();
public String toString();
}
您需要将方法定义为抽象的,如下所示:
public abstract class Shape {
public abstract double getArea();
public abstract String toString();
}
应该是:公共抽象类形状观察黛西·蒂我觉得我应该在课堂上做笔记heheThanks:)我想你不应该不看笔记就记住课堂上的一切:)蒂