gpt4 book ai didi

java - Java中的聚合和main方法中的方法

转载 作者:行者123 更新时间:2023-12-01 11:54:31 24 4
gpt4 key购买 nike

我有这样的代码,效果很好,但我想知道为什么方法区不能放在主方法中

public class Circle {
Operation op;
double pi = 3.14;

double area(int radius) {
op = new Operation();
int rsquare = op.square(radius);
return rsquare * pi;
}


public static void main(String arg[]) {
Circle c = new Circle();
double s = c.area(5);
System.out.println(s);

}

class Operation {
int square(int n) {
return n * n;
}
}
}

不起作用的示例:

public static void main(String arg[]) {
double area ( int radius){
op = new Operation();
int rsquare = op.square(radius);
return rsquare * pi;
}

最佳答案

在 Java 方法中嵌套方法实现代码的唯一方法是使用 anonymous classes 。在您的情况下,这看起来像这样(代码必须嵌套在某种类中):

public static interface Circle {
double area(int radius);
}

public static interface Operation {
int square(int n);
}

public static void main(String arg[]) {
Circle c = new Circle() {

Operation op;
double pi = 3.14;

public double area(int radius) {
op = new Operation() {
public int square(int n) {
return n * n;
}
};
int rsquare = op.square(radius);
return rsquare * pi;
}
};
double s = c.area(5);
System.out.println(s);
}

关于java - Java中的聚合和main方法中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28545481/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com