gpt4 book ai didi

java - 我应该什么时候创建类以避免庞大的 main 方法?

转载 作者:行者123 更新时间:2023-12-01 23:06:40 25 4
gpt4 key购买 nike

只是菜鸟的一个问题:如何避免巨大的 main (对于 JavaFX,start)方法?我倾向于创建一类项目,但我知道这是不正确的。基本上我不知道什么时候为特定任务创建专用类。

我希望这个问题不要那么愚蠢。

最佳答案

这不是一个愚蠢的问题。从你所说的情况来看,你可能不需要其他类(class)。你可能只需要方法。让我们看一个简单的例子:

public class MyClass {
public static void main(String[] args) {
int i = 4 + 2;
System.out.println(4 + 2);
}
}

很简单,对吧?但现在,如果变得更难怎么办。

public class MyClass {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
int k = i + (7 / 2) * 3 / 14;
System.out.println(i + " " + k);
}
}
}

现在显然,这实际上并不难。但请注意其中有一个模式吗?我们取 0-9 中的每个数字,然后添加 (7/2) * 3/14。这可以移动到一个方法中:

 int getNumber(int i) {
return i + (7 / 2) * 3 / 14);
}

现在,我们的代码看起来干净多了,因为我们不必处理任何加法、除法或乘法

public class MyClass {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
int k = getNumber(i);
System.out.println(i + " " + k);
}
}
}

这个例子可能看起来很愚蠢,因为它涉及一个非常简单的数学问题,但要点是:如果你有重复做的事情,把它放在一个方法中。

注意:方法也可以用来分割一个大的函数。 如有疑问,分而治之!
看这个:

void run() {
getInput();
tick();
render();
}

比这样的东西干净得多:

 void run() {
Scanner reader = new Scanner(System.in);
System.out.println("Enter a number: ");
String string = reader.nextString();
MyObject obj = new MyObject();
obj.doSomething(string);
obj.render();
}

如果您查看该代码,您将不知道它在做什么!但是第一个示例您会这样做,因为它分为多个方法,可以清楚地标识它们的用途。

<小时/>

无论如何,关于类(class):
谷歌面向对象编程!有大量的优质资源。对于大多数类,您可以将它们视为容器。您可以创建一个类 Wallet,其中包含 Coin 并对其进行操作(例如 spendremove添加)。

关于java - 我应该什么时候创建类以避免庞大的 main 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22646544/

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