public class EqualVarible {
int i=2;
void mv() {
int i=6;
System.out.println("i=" +i);
System.out.println("this.i=" +this.i); //这个this.i是什么个意思?
}
public static void main (String args[]) {
EqualVarible loc = new EqualVarible();
loc.mv();}
}
int i=2;
void mv() {
int i=6;
System.out.println("i=" +i);
System.out.println("this.i=" +this.i); //这个this.i是什么个意思?
}
public static void main (String args[]) {
EqualVarible loc = new EqualVarible();
loc.mv();}
}
你代码中的this.i=2,i=6
这样在方法中默认是用的局部变量(就近原则)
当你需要调用全局变量的时候就需要用this了
说白了 this就是自身
这句输出的是局部变量i 的值
而this.i只的是该类型对象的i,也就是全局变量,所以等于2
说白了,就是起区别作用的。。
this可以很好的解决类成员变量和局部变量冲突的问题。public class User {
private String name;
private String password; public User(String name, String password) {
this.name = name;//如果不用this的话,又得定义变量名,在实际的项目中,变量命名是
//一个很麻烦的问题,这样就可以很好的解决这个问题。
this.password = password;
}
}等楼主看完,面向对象了就知道了!