【发布时间】:2021-07-03 08:10:32
【问题描述】:
我注意到当你执行像sum=a+b; 这样的语句时
我们需要在此操作中使用它们之前初始化三个字段
即
int a=1
int b=1;
int sum=0;
sum=a+b;
。 我的理解是,这是因为 javac 像解释器一样工作并且逐行读取。 但是当涉及到我们调用类中的字段并将值传递给方法的方法时,我们可以在方法声明之后定义字段。
public class Dog extends Animal{
public Dog(String name, int weight, int teeth, String coat) {
super(name, true, true, weight);
this.tail=true;
this.eyes=2;
this.teeth=teeth;
this.coat=coat;
}
private int eyes;
private boolean tail;
private int teeth;
private String coat;}
参数eyes、tail、tooth 和coat 在用于将值传递给构造函数后已定义。 javac怎么理解方法后面有变量。 这是否允许,因为我们只能在类定义中定义字段而不能对它们进行任何操作?
【问题讨论】:
-
javac不像解释器那样工作。