好程序员Java教程分享Java中this的几种用法

 好程序员Java教程分享Java中this的几种用法,this关键字必须放在非静态方法里面

创新互联建站长期为千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为福清企业提供专业的成都做网站、网站制作,福清网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。

 

 this关键字代表自身,在程序中主要的使用用途有以下几个方面:

 

 ?使用this关键字引用成员变量

 

 ?使用this关键字在自身构造方法内部引用其它构造方法

 

 ?使用this关键字代表自身类的对象

 

 ?使用this关键字引用成员方法

 

 引用成员变量

 

 在一个类的方法或构造方法内部,可以使用“this.成员变量名”这样的格式来引用成员变量名,有些时候可以省略,有些时候不能省略。首先看一下下面的代码:

 

 /**

 

 *使用this引用成员变量

 

 */

 

 publiccla***eferenceVariable{

 

 privateinta;

 

 publicReferenceVariable(inta){

 

 this.a=a;

 

 }

 

 publicintgetA(){

 

 returna;

 

 }

 

 publicvoidsetA(inta){

 

 this.a=a;

 

 }

 

 }

 

 在该代码的构造方法和setA方法内部,都是用this.a引用类的成员变量。因为无论在构造方法还是setA方法内部,都包含2个变量名为a的变量,一个是参数a,另外一个是成员变量a。按照Java语言的变量作用范围规定,参数a的作用范围为构造方法或方法内部,成员变量a的作用范围是类的内部,这样在构造方法和setA方法内部就存在了变量a的冲突,Java语言规定当变量作用范围重叠时,作用域小的变量覆盖作用域大的变量。所以在构造方法和setA方法内部,参数a起作用。

 

 这样需要访问成员变量a则必须使用this进行引用。当然,如果变量名不发生重叠,则this可以省略。

 

 但是为了增强代码的可读性,一般将参数的名称和成员变量的名称保持一致,所以this的使用频率在规范的代码内部应该很多。

 

 引用构造方法

 

 在一个类的构造方法内部,也可以使用this关键字引用其它的构造方法,这样可以降低代码的重复,也可以使所有的构造方法保持统一,这样方便以后的代码修改和维护,也方便代码的阅读。

 

 下面是一个简单的示例:

 

 /**

 

 *使用this关键字引用构造方法

 

 */

 

 publiccla***eferenceConstructor{

 

 inta;

 

 publicReferenceConstructor(){

 

 this(0);

 

 }

 

 publicReferenceConstructor(inta){

 

 this.a=a;

 

 }

 

 }

 

 这里在不带参数的构造方法内部,使用this调用了另外一个构造方法,其中0是根据需要传递的参数的值,当一个类内部的构造方法比较多时,可以只书写一个构造方法的内部功能代码,然后其它的构造方法都通过调用该构造方法实现,这样既保证了所有的构造是统一的,也降低了代码的重复。

 

 在实际使用时,需要注意的是,在构造方法内部使用this关键字调用其它的构造方法时,调用的代码只能出现在构造方法内部的第一行可执行代码。这样,在构造方法内部使用this关键字调用构造方法最多会出现一次。

 

 代表自身对象

 

 在一个类的内部,也可以使用this代表自身类的对象,或者换句话说,每个类内部都有一个隐含的成员变量,该成员变量的类型是该类的类型,该成员变量的名称是this,实际使用this代表自身类的对象的示例代码如下:

 

 /**

 

 *使用this代表自身类的对象

 

 */

 

 publiccla***eferenceObject{

 

 ReferenceObjectinstance;

 

 publicReferenceObject(){

 

 instance=this;

 

 }

 

 publicvoidtest(){

 

 System.out.println(this);

 

 }

 

 }

 

 在构造方法内部,将对象this的值赋值给instance,在test方法内部,输出对象this的内容,这里的this都代表自身类型的对象。

 

 引用成员方法

 

在一个类的内部,成员方法之间的互相调用时也可以使用“this.方法名(参数)”来进行引用,只是所有这样的引用中this都可以省略,这里就不详细介绍了。

 

本文题目:好程序员Java教程分享Java中this的几种用法
文章网址:https://www.cdcxhl.com/article6/jiciig.html

成都网站建设公司_创新互联,为您提供小程序开发微信小程序品牌网站设计面包屑导航软件开发服务器托管

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设公司