这篇文章将为大家详细讲解有关java中this关键字的用法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
成都创新互联是一家专注于成都做网站、网站设计与策划设计,临河网站建设哪家好?成都创新互联做网站,专注于网站建设10多年,网设计领域的专业建站公司;建站业务涵盖:临河等地区。临河做网站价格咨询:18982081108this关键字是什么?
关键字this只能在方法内部使用,表示对当前对象的引用。
this关键字的用法
1、访问成员变量,区分成员变量和局部变量
2、访问成员方法
3、访问构造方法
4、返回对当前对象的引用
5、将对当前对象的引用作为参数传递给其他方法
用法如下:Test0505.java
class Person{ private String name;//成员变量 private int age; Person(){} Person(String name){//局部变量 this.name=name;//1.用"this.成员变量名称"和重名的局部变量区分开来 } Person(String name,int age){ this(name); this.age=age; } String getInfo(){//成员方法 return "姓名:" + name + "\n年龄:" + age; } void print(){ System.out.println(this.getInfo());//2.用"this.成员方法名"访问成员方法。 System.out.println(getInfo());//这种情况this关键字一般不写,让编译器自动添加。 } } public class Test0505{ public static void main(String[] args){ Person p=new Person("张三",33); p.print(); } }
class Person{ private String name; private int age; Person(){} Person(String name){//不含this()的构造方法 this.name=name; } Person(String name,int age){//在构造方法内调用另一个构造方法 this(name);//3."this();"访问构造方法必须放在构造方法的第一行 this.age=age; } String getInfo(){ return "姓名:" + name + "\n年龄:" + age; } void print(){ System.out.println(this.getInfo()); } } public class Test0505{ public static void main(String[] args){ Person p=new Person("张三",33); p.print(); } }
class Leaf{ private int i=0; Leaf increment(){ i++; return this;//4.返回对当前对象的引用。 } void print(){ System.out.println("i="+i); } } public class Test0505{ public static void main(String[] args){ Leaf x=new Leaf(); x.increment().increment().increment().print(); } }
class Person{ void eat(Apple apple){ Apple peeled=apple.getPeeled(); System.out.println(peeled); } } class Apple{ Apple getPeeled(){ System.out.println(this);//输出对当前对象的引用。 return Peeler.peel(this);//5.将对当前对象的引用作为参数传递给其他方法。 } } class Peeler{ static Apple peel(Apple apple){ return apple; } } public class Test0505{ public static void main(String[] args){ Apple a=new Apple(); System.out.println(a); new Person().eat(a); } }
关于java中this关键字的用法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。