gpt4 book ai didi

Java:过度使用 'static'

转载 作者:行者123 更新时间:2023-12-01 22:02:55 25 4
gpt4 key购买 nike

如何在没有 static 关键字的情况下在任何方法之外使用变量?人们说不应该这样做,有更好的方法吗?

这是一些代码:

public class Main{

private static int a = 0;
private static int b = 1; //<--- How to use these without the 'static' type?

public static void main(String[] args){ //Which will work here,

Okay();

}

public static void Okay(){ //And here?
if(a <= b){
System.out.println("Alright");
}else{
System.out.println("Okay Then");
}
}

}

最佳答案

首先删除所有 static 的使用(除了 public static void main,你需要那个)

public static void main中,创建一个Main实例并调用它的Okay方法...

Main main = new Main();
main.Okay();

例如

public class Main {

private int a = 0;
private int b = 1;

public static void main(String[] args) { //Which will work here,

Main main = new Main();
main.Okay();

}

public Main() {

}

public void Okay() { //And here?
if (a <= b) {
System.out.println("Alright");
} else {
System.out.println("Okay Then");
}
}

}

虽然这看起来微不足道,但如果您有一个以多种不同方式修改值的类,那么使用这样的实例类会更有意义,因为您可以根据需要创建任意数量的实例,并且他们会维护自己的值版本,允许您以不同的方式操作不同的实例而不影响其他实例

您可能还想查看Understanding Class Members了解更多详情

您可能想通读Code Conventions for the Java TM Programming Language ,这将使人们更容易阅读您的代码,也让您更轻松地阅读其他人

关于Java:过度使用 'static',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33428190/

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