JAVA关于类的初步应用

  1. 定义一个主类CircleTest,在主类中实现:
    ① 用无参数Constructor生成一个Circle对象,并调用mutator方法设置radius的值,再输出其面积、周长及直径;
    ② 用有参数Constructor生成另一个Circle对象,再输出其面积、周长及直径。

    我已经按照书本上模仿了一段差不多的代码(应该不会有错) 然后在主类中调用的时候产生了奇怪的问题 :无法从静态上下文中引用非静态变量this

    class Circle{
    private double radius;
    // private double area;
    //private double perimeter;
    private double PI=3.1415;
    public Circle()
    { }//空参数
    public Circle(double r)
    {
    radius=r;
    }

    public double mutator(){//设置半径
        return radius;
    }
    public void accessor(double r){//获取半径
        radius=r;
    }
    public double area(){
        return radius*radius*PI/2;
    

    }
    public double perimeter(){
    return 2*radius*PI;

    }
    }
    public static void main(String[] args) {
    ** Circle radius = new Circle();**

不太明白为啥会出错。。这一步也是模仿课本来的来着。
class Untitled {
    public static void main(String[] args) {
        Circle radius = new Circle();
        radius.accessor(10.0);
        System.out.println(radius.area());
    }
}

class Circle{
    private double radius;
    // private double area;
    //private double perimeter;
    private double PI=3.1416;
    public Circle()
    { }//无参构造函数
    public Circle(double r)
    {
        radius=r;
    }
    public double mutator(){//获取半径
        return radius;
    }
    public void accessor(double r){//设置半径
        radius=r;
    }
    public double area(){
        return radius*radius*PI/2;
    }
    public double perimeter(){
        return 2*radius*PI;
    }
}

157.07999999999998

this是类的实例对象,静态方法调用的时候不需要类的实例对象