我很难理解如何将程序拆分为较小的函数而不是主函数中的代码集。是的,我自己找了一个指南。我发现的那些没有帮助或进一步困扰我。谢谢:))
编辑: 我来自非常有限的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
答案 0 :(得分:4)
我认为你应该首先阅读“面向对象的编程”(不是书名,而是要搜索的东西......)。
另一个好的开始是“设计模式”,但是在熟悉了OOP的基础知识之后。
关于OOP的一些参考文献:
......关于设计模式:
答案 1 :(得分: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可以帮助您编写大部分内容,因此您不必再输入更多内容。
答案 2 :(得分:0)
由于你来自c ++背景,我猜你错过了函数必须是类的一部分(可以说一切都是java中的对象)。
class Math{
int add(int x, int y){
return x + y;
}
}
然后创建Math实例并在该实例上调用add()。您还可以将add()函数设置为static以避免创建实例
例如,在主要方法
中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 ++背景的人来说,它是一本好书。