Java 使用此运算符在构造函数中获取变量?
当使用“this”运算符引用当前对象中的变量时,构造函数中是否包含该变量?例如Java 使用此运算符在构造函数中获取变量?,java,constructor,this,Java,Constructor,This,当使用“this”运算符引用当前对象中的变量时,构造函数中是否包含该变量?例如 public class Mechanics { public Mechanics() { int x = 1; } public int returnX(){ return this.x; { } 当创建对象时调用构造函数时,“this”操作符会返回构造函数中的x还是只返回外部的变量 谢谢您的代码无效,无法编译x仅对构造函数是本地的。它不是力学类的字段。要在其他
public class Mechanics {
public Mechanics() {
int x = 1;
}
public int returnX(){
return this.x;
{
}
当创建对象时调用构造函数时,“this”操作符会返回构造函数中的x还是只返回外部的变量
谢谢您的代码无效,无法编译<构造函数中定义的代码>x仅对构造函数是本地的。它不是
力学
类的字段。要在其他地方使用x
,需要将其声明为类的字段:
public class Mechanics {
private int x;
public Mechanics() {
this.x = 1; //initialize x in the constructor
}
public int returnX() {
return this.x;
}
}
这也是一样的,因为按照您所期望的行为,您在类的任何成员方法(包括构造函数)中声明的任何局部变量都会变成所属类的字段。这是一种无政府状态。您的代码无效,无法编译<构造函数中定义的代码>x仅对构造函数是本地的。它不是
力学
类的字段。要在其他地方使用x
,需要将其声明为类的字段:
public class Mechanics {
private int x;
public Mechanics() {
this.x = 1; //initialize x in the constructor
}
public int returnX() {
return this.x;
}
}
这也是一样的,因为按照您所期望的行为,您在类的任何成员方法(包括构造函数)中声明的任何局部变量都会变成所属类的字段。这是一种无政府状态。您的代码无效,无法编译<构造函数中定义的代码>x仅对构造函数是本地的。它不是
力学
类的字段。要在其他地方使用x
,需要将其声明为类的字段:
public class Mechanics {
private int x;
public Mechanics() {
this.x = 1; //initialize x in the constructor
}
public int returnX() {
return this.x;
}
}
这也是一样的,因为按照您所期望的行为,您在类的任何成员方法(包括构造函数)中声明的任何局部变量都会变成所属类的字段。这是一种无政府状态。您的代码无效,无法编译<构造函数中定义的代码>x仅对构造函数是本地的。它不是
力学
类的字段。要在其他地方使用x
,需要将其声明为类的字段:
public class Mechanics {
private int x;
public Mechanics() {
this.x = 1; //initialize x in the constructor
}
public int returnX() {
return this.x;
}
}
这也是一样的,因为按照您所期望的行为,您在类的任何成员方法(包括构造函数)中声明的任何局部变量都会变成所属类的字段。这是一种无政府状态。变量
x
的范围仅限于构造函数
如果您想访问returnX
中的x
,您可以这样做:
public class Mechanics {
private int x;
public Mechanics() {
this.x =1;
}
public int returnX(){
return this.x;
}
}
变量
x
的范围仅限于构造函数
如果您想访问returnX
中的x
,您可以这样做:
public class Mechanics {
private int x;
public Mechanics() {
this.x =1;
}
public int returnX(){
return this.x;
}
}
变量
x
的范围仅限于构造函数
如果您想访问returnX
中的x
,您可以这样做:
public class Mechanics {
private int x;
public Mechanics() {
this.x =1;
}
public int returnX(){
return this.x;
}
}
变量
x
的范围仅限于构造函数
如果您想访问returnX
中的x
,您可以这样做:
public class Mechanics {
private int x;
public Mechanics() {
this.x =1;
}
public int returnX(){
return this.x;
}
}
X是构造函数内部的局部变量,在构造函数完成其工作后它就不存在了。您的代码将无法编译 “this”只是对此类对象的引用。是否可以在其他方法中获取某些局部变量的值?不,不管你怎么努力。
您需要类字段,它对所有方法都是可见的。X是构造函数内部的局部变量,在构造函数完成其工作后它就不存在了。您的代码将无法编译 “this”只是对此类对象的引用。是否可以在其他方法中获取某些局部变量的值?不,不管你怎么努力。
您需要类字段,它对所有方法都是可见的。X是构造函数内部的局部变量,在构造函数完成其工作后它就不存在了。您的代码将无法编译 “this”只是对此类对象的引用。是否可以在其他方法中获取某些局部变量的值?不,不管你怎么努力。
您需要类字段,它对所有方法都是可见的。X是构造函数内部的局部变量,在构造函数完成其工作后它就不存在了。您的代码将无法编译 “this”只是对此类对象的引用。是否可以在其他方法中获取某些局部变量的值?不,不管你怎么努力。
您需要所有方法都可见的类字段。您应该读取变量范围。
x
的范围仅限于构造函数。因此,不,您将无法引用它。此外,变量和数据成员是完全不同的东西。感谢您的回答,您应该阅读变量范围。x
的范围仅限于构造函数。因此,不,您将无法引用它。此外,变量和数据成员是完全不同的东西。感谢您的回答,您应该阅读变量范围。x
的范围仅限于构造函数。因此,不,您将无法引用它。此外,变量和数据成员是完全不同的东西。感谢您的回答,您应该阅读变量范围。x
的范围仅限于构造函数。因此,不,您将无法引用它。此外,变量和数据成员是完全不同的东西。谢谢您的回复