关于this的理解
来源:3-1 课程总结
lijikai1937
2017-05-13 13:03:06
我听老师讲的临近原则那里没搞明白后来才觉得说的这个原则,可以这么理解,在对属性进行初始化的时候,如果没有this就会使用类里面自己定义的默认值去进行实例化,就是用初始值去赋值,然后实例化,如果加了this就会通过传入的参数进行实例化。其实我还是觉得这里有点没有很理解,这里到底是怎么进行的,this跟类里面创建的那个对象之间的关系。
2回答
好帮手慕珊
2017-05-13
this表示当前对象的默认引用,可以访问当前对象的属性和方法。看一下下面例子中的注释:
public class Cat{
private String name;
public Cat(String name){
name=15;//如果这么写,那么name指的是哪个,是方法参数中的name,还是成员变量的name
//按照就近原则,也就是最近定义的那个就是这里用的。因此name指的是方法参数的name
//那么构造方法的用处就是给成员变量赋值,如何表示呢,下面的代码就是了
this.name=15;//this.name就表示成员变量的name值,一般用方法参数给成员变量赋值如下:
this.name=name;
}
}
关于你说的,this跟类里面创建的那个对象的关系,类里面创建的对象不知道具体指的是什么,可以再说明一下么?
祝学习愉快!
好帮手慕雪
2017-05-15
你好,"如果把name放进定义的类里面,name=this.name;那么离它近的就是成员变量的name,而不是方法参数的name",没问题。
“会造成赋值失败,就是赋的值是默认值”倒不会失败,也不会报错,就是跟没写是一样的。祝:学习愉快
相似问题