這篇文章運用簡單易懂的例子給大家介紹java中this訪問成員變量的方法,代碼非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
創(chuàng)新互聯(lián)公司是一家專業(yè)提供天寧企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為天寧眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計公司優(yōu)惠進(jìn)行中。
如果存在同名成員變量與局部變量時,在方法內(nèi)部默認(rèn)是訪問局部變量的數(shù)據(jù),可以通過this關(guān)鍵字指定訪問成員變量的數(shù)據(jù)。在一個構(gòu)造函數(shù)中可以調(diào)用另外一個構(gòu)造函數(shù)初始化對象。
1.在類的方法定義中使用this關(guān)鍵字代表使用該方法的對象的引用
2.當(dāng)必須指出當(dāng)前使用方法的對象是誰時要使用this
3.有時使用this可以處理方法中成員變量和參數(shù)變量重名的情況
4.this可以看作是一個變量,它的值是當(dāng)前對象的引用
注意事項:
存在同名的成員變量與局部變量時,在方法的內(nèi)部訪問的是局部變量(java 采取的是“就近原則”的機(jī)制訪問的。)如果在一個方法中訪問了一個變量,該變量只存在成員變量的情況下,那么java編譯器會在該變量的 前面添加this關(guān)鍵字。
/* this關(guān)鍵字調(diào)用其他的構(gòu)造函數(shù)要注意的事項: 1. this關(guān)鍵字調(diào)用其他的構(gòu)造函數(shù)時,this關(guān)鍵字必須要位于構(gòu)造函數(shù)中 的第一個語句。 2. this關(guān)鍵字在構(gòu)造函數(shù)中不能出現(xiàn)相互調(diào)用 的情況,因為是一個死循環(huán)。 */ class Student{ int id; //身份證 String name; //名字 //目前情況:存在同名 的成員 變量與局部變量,在方法內(nèi)部默認(rèn)是使用局部變量的。 public Student(int id,String name){ //一個函數(shù)的形式參數(shù)也是屬于局部變量。 this(name); //調(diào)用了本類的一個參數(shù)的構(gòu)造方法 //this(); //調(diào)用了本類無參的 構(gòu)造方法。 this.id = id; // this.id = id 局部變量的id給成員變量的id賦值 System.out.println("兩個參數(shù)的構(gòu)造方法被調(diào)用了..."); } public Student(){ System.out.println("無參的構(gòu)造方法被調(diào)用了..."); } public Student(String name){ this.name = name; System.out.println("一個參數(shù)的構(gòu)造方法被調(diào)用了..."); } } class Demo7 { public static void main(String[] args) { Student s = new Student(110,"鐵蛋"); System.out.println("編號:"+ s.id +" 名字:" + s.name); /* Student s2 = new Student("金胖子"); System.out.println("名字:" + s2.name); */ } }
關(guān)于java中this訪問成員變量的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
網(wǎng)站標(biāo)題:java中this訪問成員變量的方法
文章地址:http://jinyejixie.com/article8/pdchip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、網(wǎng)站導(dǎo)航、電子商務(wù)、營銷型網(wǎng)站建設(shè)、App設(shè)計、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)