我试图从同一类中的方法访问构造函数中定义的对象。
其他方法是否可以访问对象,同时仍在构造函数中对其进行初始化?
class Number {
public Number (int num1, int num2) {
Calculator calc1 = new Calculator(num1);
Calculator calc2 = new Calculator(num2);
}
public void displayNumber() {
System.out.println(calc1.result);
}
}
最佳答案
你不能那样做。您唯一的选择是在构造函数外部声明它们,并在其中初始化它们:
class Number{
Calculator calc1;
Calculator calc2;
public Number(int num1, int num2){
calc1 = new Calculator(num1);
calc2 = new Calculator(num2);
}
public void displayNumber(){
System.out.println(calc1.result);
}
}
在构造函数中声明的变量,就像在任何方法中声明的变量一样,超出了其他方法的范围。
关于java - 如何使构造函数中定义的对象对类的其余部分可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50252318/