3

我很难理解如何将我的程序拆分为更小的函数,而不是主函数中的一组代码。是的,我自己找了一个指南。我发现的那些要么没有帮助,要么让我更加困惑。谢谢 :)

编辑:我来自非常有限的 C++ 和 JavaScript 背景。

在 C++ 中,我可以简单地这样做:

int main () {
int x,y;

cin >> x >> y;
cout << addNum(x,y) << endl;
}

int addNum(num1,num2) {
return num1+num2;
}

我在java中迷路了。:S

4

3 回答 3

4

我认为您应该首先阅读“面向对象编程”(不是书名,而是要搜索的内容......)。

另一个好的开始是“设计模式”,但在您熟悉了 OOP 的基础知识之后。

关于 OOP 的一些参考资料:

...关于设计模式:

于 2013-01-09T08:11:19.227 回答
1

一个建议你从简单的开始和你的 IDE 重构出方法。进行单元测试并重新编写代码以使其更清晰、更简单可以迭代地改进代码。

在 Java 中,你可以用它来编写你的例子。

public class Main {
    public static void main(String... ignored) {
        Scanner scanner = new Scanner(System.in);
        int x = scanner.nextInt(), y = scanner.nextInt();
        System.out.println(addNum(x, y));
    }

    private static int addNum(int x, int y) {
        return x + y;
    }
}

虽然 Java 很冗长,但 IDE 可以帮助您编写大部分内容,因此您不必输入更多内容。

于 2013-01-09T08:37:21.553 回答
0

由于您来自 c++ 背景,我想您错过了函数必须是类的一部分(可以说一切都是 java 中的对象)。

class Math{
    int add(int x, int y){
     return x + y;
    }
}

然后,您创建一个 Math 实例并在该实例上调用 add()。您还可以将 add() 函数设为静态以避免创建实例

例如,在 main 方法中

Math m = new Math();
System.out.println(m.add(x,y));

如果 add() 是一个静态函数,你会编码

System.out.println(Math.add(x,y));

正如许多其他人所建议的那样,最好阅读一些关于 OOP 和 Java 的好书。我会推荐Bruce Eckel 的 Thinking in Java。对于有 C++ 背景的人来说,这是一本好书。

于 2013-01-09T08:27:30.473 回答