首页 > 解决方案 > 无法实例化类型(抽象)

问题描述

我无法理解我的代码有什么问题我无法弄清楚请帮助我:

    System.out.println("Enter the Radius of the circle: ");
    double radius = input.nextDouble();
    ShapeCircle AndP = new ShapeCircle();
    System.out.println(AndP.Acircle(radius));
    System.out.println(AndP.Pcircle(radius));
    input.close();

我想用抽象编程它

abstract class ShapeCircle{
    public double Acircle(double radius){
        double Ans;
        return Ans = Math.PI * (radius * radius);
    }
    public abstract double Pcircle(double radius);
}

但我不明白是什么问题,这是我的另一堂课:

class shapePcircle extends ShapeCircle{
    public double Pcircle(double radius){
        double Ans;
        return Ans = 2 * Math.PI * radius;
    }
}

问题就在这里

    ShapeCircle AndP = new ShapeCircle();

无法实例化类型我不知道为什么

标签: javaabstract

解决方案


尝试实例化具体类而不是抽象类。在你的情况下

ShapeCircle AndP = new ShapePCircle();


推荐阅读