大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java里this的用法介紹

Java里this的用法介紹

更新時間:2022-04-19 09:10:27 來源:動力節(jié)點 瀏覽1596次

動力節(jié)點小編來給大家介紹一下Java里this的用法有哪些。

Java this 關鍵字的用法

這里給出java this關鍵字的6種用法。

this 可用于引用當前類實例變量

this 可用于調(diào)用當前類方法(隱式)

this() 可用于調(diào)用當前類的構造函數(shù)。

這可以作為方法調(diào)用中的參數(shù)傳遞。

this 可以在構造函數(shù)調(diào)用中作為參數(shù)傳遞。

this 可用于從方法返回當前類實例。

建議:如果你是java初學者,只查一下這個關鍵字的三種用法。

(1)this:引用當前類實例變量

this 關鍵字可用于引用當前類實例變量。如果實例變量和參數(shù)之間有歧義,這個關鍵字解決了歧義的問題。

理解沒有這個關鍵字的問題

如果我們不使用這個關鍵字,讓我們通過下面給出的示例來理解問題:

班級 學生{  
詮釋 rollno;  
字符串名稱;  
浮動 費用;  
學生(int  rollno,字符串名稱,浮動 費用){  
卷號=卷號;  
名稱=名稱;  
費用=費用;  
}  
void  display(){System.out.println(rollno+ " " +name+ " " +fee);}  
}  
類 TestThis1{  
公共靜態(tài)無效 主要(字符串參數(shù)[]){    
學生 s1=新 學生(111 ,“ankit” ,5000f);  
學生 s2=新 學生(112 ,“summit” ,6000f);  
s1.display();  
s2.display();  
}}  

輸出:

0 null 0.0
0 null 0.0

(2)this:調(diào)用當前類方法

您可以使用 this 關鍵字調(diào)用當前類的方法。如果不使用 this 關鍵字,編譯器會在調(diào)用方法時自動添加 this 關鍵字。讓我們看看這個例子

A類 {  
void  m(){System.out.println( "你好 m" );}  
無效 n(){  
System.out.println( "你好 n" );  
//m();//和this.m()一樣  
這個.m();  
}  
}  
類 TestThis4{  
公共靜態(tài)無效 主要(字符串參數(shù)[]){    
A a=新 A();  
一個();  
}}  

輸出:

你好
你好,我

(3)this() : 調(diào)用當前類的構造函數(shù)

this() 構造函數(shù)調(diào)用可用于調(diào)用當前類構造函數(shù)。它用于重用構造函數(shù)。換句話說,它用于構造函數(shù)鏈接。

從參數(shù)化構造函數(shù)調(diào)用默認構造函數(shù):

A類 {  
A(){System.out.println( "你好" );}  
A( int  x){  
這個();  
System.out.println(x);  
}  
}  
類 TestThis5{  
公共靜態(tài)無效 主要(字符串參數(shù)[]){    
A a=新 A( 10 );  
}}  

輸出:

你好一個
10

從默認構造函數(shù)調(diào)用參數(shù)化構造函數(shù):

A類 {  
一種(){  
這( 5 );  
System.out.println( "你好" );  
}  
A( int  x){  
System.out.println(x);  
}  
}  
類 TestThis6{  
公共靜態(tài)無效 主要(字符串參數(shù)[]){    
A a=新 A();  
}}  

輸出:

5
你好一個

this() 構造函數(shù)調(diào)用的真實用法

應該使用 this() 構造函數(shù)調(diào)用來重用構造函數(shù)中的構造函數(shù)。它維護構造函數(shù)之間的鏈,即它用于構造函數(shù)鏈。讓我們看看下面給出的示例,該示例顯示了 this 關鍵字的實際用法。

班級 學生{  
詮釋 rollno;  
字符串名稱,課程;  
浮動 費用;  
學生(int  rollno,字符串名稱,字符串課程){  
這個.rollno=rollno;  
這個.name=name;  
這.course=課程;  
}  
Student( int  rollno,String name,String course, float  fee){  
這(卷號,名稱,課程);//重用構造函數(shù)  
這個.fee=fee;  
}  
void  display(){System.out.println(rollno+ " " +name+ " " +course+ " " +fee);}  
}  
類 TestThis7{  
公共靜態(tài)無效 主要(字符串參數(shù)[]){    
學生 s1=新 學生(111 ,“ankit” ,“java” );  
學生 s2=新 學生(112 ,“sumit” ,“java” ,6000f);  
s1.display();  
s2.display();  
}}  

輸出:

111 ankit java 0.0
112 sumit java 6000.0

規(guī)則:調(diào)用 this() 必須是構造函數(shù)中的第一條語句。 

班級 學生{  
詮釋 rollno;  
字符串名稱,課程;  
浮動 費用;  
學生(int  rollno,字符串名稱,字符串課程){  
這個.rollno=rollno;  
這個.name=name;  
這.course=課程;  
}  
Student( int  rollno,String name,String course, float  fee){  
這個.fee=fee;  
這(卷號,名稱,課程);//CT錯誤  
}  
void  display(){System.out.println(rollno+ " " +name+ " " +course+ " " +fee);}  
}  
類 TestThis8{  
公共靜態(tài)無效 主要(字符串參數(shù)[]){    
學生 s1=新 學生(111 ,“ankit” ,“java” );  
學生 s2=新 學生(112 ,“sumit” ,“java” ,6000f);  
s1.display();  
s2.display();  
}}  

輸出:

編譯時錯誤:調(diào)用 this 必須是構造函數(shù)中的第一條語句

(4)this: 在方法中作為參數(shù)傳遞

this 關鍵字也可以作為方法中的參數(shù)傳遞。它主要用于事件處理。讓我們看看這個例子:

 S2  類{
  無效 米(S2 對象){  
  System.out.println( "方法被調(diào)用" );  
  }  
  無效 p(){  
  米(這個);  
  }  
  公共靜態(tài)無效 主要(字符串參數(shù)[]){    
  S2 s1 = 新 S2();  
  s1.p();  
  }  
}  

輸出:

方法被調(diào)用

可以作為參數(shù)傳遞的 this 的應用:

在事件處理中(或)在我們必須提供一個類對另一個類的引用的情況下。它用于在許多方法中重用一個對象。

(5)this:在構造函數(shù)調(diào)用中作為參數(shù)傳遞

我們也可以在構造函數(shù)中傳遞 this 關鍵字。如果我們必須在多個類中使用一個對象,這很有用。讓我們看看這個例子:

B類 {  
  A4 對象;  
  B(A4 對象){  
    這個.obj=obj;  
  }  
  無效 顯示(){  
    System.out.println(obj.data); //使用A4類的數(shù)據(jù)成員  
  }  
}    
 A4  類{
  整數(shù) 數(shù)據(jù)= 10 ;  
  A4(){  
   B b=新 B(這個);  
   b.顯示();  
  }  
  公共靜態(tài)無效 主要(字符串參數(shù)[]){    
   A4 a=新 A4();  
  }  
}  

輸出:

10

(6)這個關鍵字可以用來返回當前的類實例

我們可以將此關鍵字作為方法中的語句返回。在這種情況下,方法的返回類型必須是類類型(非原始)。讓我們看看這個例子:

可以作為語句返回的 this 的語法

返回類型方法名稱(){  
返回這個;   
}  

從方法中作為語句返回的此關鍵字示例

A類 {  
一個 getA(){  
返回這個;   
}  
void  msg(){System.out.println( "Hello java" );}  
}  
類 測試1{  
公共靜態(tài)無效 主要(字符串參數(shù)[]){    
新 的 A().getA().msg();  
}  
}  

輸出:

你好java

證明這個關鍵字

讓我們證明這個Java關鍵字是指當前類的實例變量。在這個程序中,我們正在打印參考變量,這兩個變量的輸出是相同的。

 A5  級{
無效 米(){  
System.out.println(這個); //打印相同的參考ID  
}  
公共靜態(tài)無效 主要(字符串參數(shù)[]){    
A5 obj=新 A5();  
System.out.println(obj); //打印參考ID  
obj.m();  
}  
}  

輸出:

A5@22b3ea59 
A5@22b3ea59

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产美女一级视频 | 99毛片| 免费一级欧美大片在线观看 | 日韩在线国产精品 | 国产91在线视频 | 日本高清不卡一区久久精品 | 国产精品婷婷久久爽一下 | 久久精品视频一区二区三区 | 久久亚洲精品人成综合网 | 97人人干| 麻豆精品成人免费国产片 | 国产网友自拍 | 亚洲第一黄色网址 | 天天干夜夜爽天天操夜夜爽视频 | 成人短视频在线观看免费 | 另类色视频| 亚洲综合极品香蕉久久网 | 日本一级网站 | 成年女人午夜毛片免费看 | 免费国产一区二区三区 | 欧美成人午夜 | 日韩一级大毛片欧美一级 | 欧美成人免费公开播放 | 在线欧美精品国产综合五月 | 国产女人综合久久精品视 | 欧美大吊视频 | 国产精品久久久久久久免费 | 色老头成人免费视频天天综合 | 日韩中文字幕在线 | 天天视频免费入口 | 欧美性一区二区三区五区 | 午夜剧场毛片 | 久久精品综合免费观看 | 岛国大片在线观看 | 国产免费一区二区三区香蕉精 | 亚洲精品一区亚洲精品 | 在线观看视频亚洲 | 中文字幕国产精品 | 亚州综合 | 成人国产精品一级毛片了 | 暗香影院午夜国产精品 |