Java AP第2章工作表1方法

Java AP第2章工作表1方法,java,Java,我运行了代码,结果成功了。目标是将标记语句从1到6编号,在下面程序片段右侧的空白处,显示它们执行的逻辑顺序。我不知道如何给标记的语句编号。代码和输出如下所示 import java.lang.Math; public class Problem1{ public static void main(String[] args){ System.out.println("Number"); int number1 = 1; float num

我运行了代码,结果成功了。目标是将标记语句从1到6编号,在下面程序片段右侧的空白处,显示它们执行的逻辑顺序。我不知道如何给标记的语句编号。代码和输出如下所示

import java.lang.Math;

public class Problem1{
    public static void main(String[] args){
        System.out.println("Number");
        int number1 = 1;
        float number2 = 2.5f;
        Problem1 object1 = new Problem1();
        object1.doThis(number1, number2);
        object1.alsoDo(number1, number2);
        System.out.println(number1 + " " + number2);
    }

    public void alsoDo(int value1,float value2){
        System.out.println(value1 + value2);
    }

    public void doThis(int num1, float num2) {
        int num3 = 3;
        System.out.println(num1 + num2 + num3);
    }
}
数 6.5 3.5
1 2.5

从公共空间开始的行是Problem1类的方法。唯一自动调用的是main()。当您运行“java Problem1”时,JVM启动main()方法,并自上而下运行,直到main()方法结束


一个好的文本编辑器,如IDE或任何IDE,都可以让您看到哪些括号集相互匹配。

哪些语句被标记?似乎(因为这是一个AP问题)这个问题只是想让你写在页面上,并按照执行顺序对行进行编号

通常,代码将自上而下执行,以便您能够标记它们:

1
2
3
以此类推,但如果在主方法中调用函数,则会得到如下结果:

public static void main(String args[]){
    some line of code; //Executes first
    some line of code; //Executes second
    function();
    some line of code; //Executes fourth
}
private void function(){
    some line of code; //Executes third
}

这个问题需要您确定上面代码行的运行顺序。

我不知道应该标记哪些语句,但下面是如何标记的详细说明

成为程序员的基本技能之一是将问题分解成更小的问题。你得到了一个程序,你需要分解每一行代码,看看它如何适应更大的图景

您还需要知道,代码并不总是以“线性”方式执行。当调用方法时,例如
doThis()
alsoDo()
,将执行该方法中的代码。即使
System.out.println(value1+value2)是在
System.out.println(number1+“”+number2)之后键入的,首先执行前者

在您的示例中,我们的主要方法是:

public static void main(String[]args){
    System.out.println("Number");
    int number1= 1;
    float number2= 2.5f;
    Problem1 object1 = new Problem1();
    object1.doThis(number1,number2);
    object1.alsoDo(number1,number2);
    System.out.println(number1+" " + number2);
}
程序总是通过运行
main
方法启动。当执行
main
方法时,程序将打印“Number”。然后,它将整型变量初始化为1,然后将浮点型变量初始化为2.5。它创建了一个类型为
Problem1
的对象,它是主类

随着程序逐行进行,这些语句的执行相当简单。下一行是它变得有趣的地方

doThis()
方法在
number1
number2
上调用。程序没有继续下一行,而是“跳转”到
doThis()
方法。它执行以下操作:

public void doThis(int num1, float num2){
    int num3= 3;
    System.out.println(num1+num2+num3);
}
此方法采用两个参数,一个
int
和一个
float
。然后打印这两个参数和3的总和

成功执行此方法后,我们可以转到主方法的下一行。
object1.alsoDo(数字1,数字2)

与前面一样,我们执行一个新方法,该方法稍后在类中定义。我们“跳转”到
alsoDo()

此方法的参数与
doThis()
相同,但函数略有不同。它打印两个参数的总和

现在,我们可以转到main方法的最后一行。
System.out.println(number1+“”+number2)

这只是打印由空格分隔的两个数字


正如我在开始时所说,代码不是以线性方式执行的。尽管main方法中的print方法的行号早于其他两个,但它是最后执行的。

什么是Geany?感谢您的解释,这对我很有帮助,因为我是Java新手。Geany是一个非常好的跨平台文本编辑器/轻量级IDE。记事本++或任何其他面向程序员的文本编辑器应该提供相同或类似的功能。很好,我将对Geany做更多的研究,看看它是如何工作的。我使用的Java编译器是Browxy.Nice,Java读取代码行的方式很有趣。这些信息很有价值,非常感谢。对于工作表,我按以下顺序对标记的语句进行编号:1、5、3、6、4、2。
public void alsoDo(int value1,float value2){
    System.out.println(value1 + value2);
}