让我们看看您的代码:
public class Iset { public int size;// Declares a Member of a class and all the objects will have a copy of this member boolean[] Iset;.....} ISet(int a) { int size = a; //This line is declaring a **local variable** called size seti = new boolean[size];...}
在构造函数中,您已经看到创建了局部变量,
size但是在类中也有一个称为类的成员
size
。因此,在这种情况下,每当我们尝试
size在构造函数中设置变量时,无论是设置局部变量还是类成员,编译器都会发生冲突(此冲突是因为局部变量和类成员都具有相同的名称)
。 在这种情况下,编译器会选择局部变量的大小而不是类成员的大小 。但是,要确保在构造函数中使用的值在我的所有方法中都已使用,
则必须设置class member 。要设置类成员,我们使用以下代码:
this.size = a;//Says set the object member size to value present in a.
在这里,我们使用 此 指针来引用大小, 因为我们需要设置对象的大小变量,而不是局部变量size 。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)