我在如何在主程序中声明子类时遇到麻烦。
我有一个名为Shapes的抽象超类,以及4个子类(Rectangle,Triangle,Circle,Square);
我知道如果我想使用超类,我会创建一个新变量:
private Shapes shapes;
然后,将变量分配给superClass:
shapes = new Shapes();
我可以声明这样的子类:
private Shapes square;
//
square = new Square();//Square is a sub-class of Shapes.
请帮助。
最佳答案
您不是在声明上面的类,而是在创建指针和实例化对象。您实际上需要像这样使用class关键字:
public class Shape {
}
当您创建子类时,它将是
public class Square extends Shape {
}
例如,如果您在其主对象中创建对象,则它可能类似于:
Shape s = new Square();
要么
Square square = new Square();
但这只是创建对象而不是类的方式。