java this关键字

来源:互联网 发布:东德与西德合并知乎 编辑:程序博客网 时间:2024/04/29 09:19
this语句只能用于构造函数之间,不能用于一般函数中。

this关键字:看上去,是用于区分成员变量和局部变量同名的情况。
(1)如果成员变量和局部变量同名,那么在函数中只识别成员变量中的。
this:就代表本类的对象,但是到底代表哪一个呢?
this就代表它所在函数所属对象的引用。
简单说:哪个对象在调用this所在的函数,this就代表哪个对象。

this关键字的应用:当定义类中功能时,该函数内部要用到调用该函数的对象时,这时用this来表示这个对象。
但凡本类功能内部使用了本类对象,都用this来表示。
**********************************************
(2)this“语句”:用于构造函数之间进行互相调用。

this语句只能定义在构造函数的第一行,理论根据是:先初始化再改变变量值。因为初始化要先执行。
class Person {private String name;private int age;Person(String name){this.name=name;}Person(String name,int age){this(name);//用this语句来代替this.name=name,其实this(name)调用的是上一个构造函数;this.age=age;}public void show(){System.out.println("name:"+name+",age:"+age);}//比较两个人是否同龄public boolean compare(Person p){return this.age==p.age;}}class PersonDemo3{public static void main(String[] args){Person p1=new Person("zhangsan");Person p2=new Person("lisi",34);Person p3=new Person("wangwu",20);boolean flag=p2.compare(p3);if(flag){System.out.println("yes");}else{System.out.println("no");}//p1.show();//p2.show();}}

1 0
原创粉丝点击