激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java 中This用法的實例詳解

Java 中This用法的實例詳解

2020-12-30 11:17QQ37267015 Java教程

這篇文章主要介紹了 Java 中This用法的實例詳解的相關資料,希望通過本文大家能理解掌握this關鍵字的使用方法,需要的朋友可以參考下

 JavaThis用法的實例詳解

用類名定義一個變量的時候,定義的只是一個引用,外面可以通過這個引用來訪問這個類里面的屬性和方法。

    那們類里面是夠也應該有一個引用來訪問自己的屬性和方法納?

    呵呵,Java提供了一個很好的東西,就是 this 對象,它可以在類里面來引用這個類的屬性和方法。先來個簡單的例子:

?
1
2
3
4
5
6
7
8
9
10
11
public class ThisDemo {
  String name="Mick";
  public void print(String name){
    System.out.println("類中的屬性 name="+this.name);
    System.out.println("局部傳參的屬性="+name);
  
  public static void main(String[] args) {
    ThisDemo tt=new ThisDemo();
    tt.print("Orson");
  }
}

    關于返回類自身的引用,《Thinking in Java》有個很經典的例子。

    通過this 這個關鍵字返回自身這個對象然后在一條語句里面實現多次的操作,還是貼出來。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class ThisDemo {
  int number;
  ThisDemo increment(){
     number++;
     return this;
  }
 private void print(){
     System.out.println("number="+number);
  }
  public static void main(String[] args) {
    ThisDemo tt=new ThisDemo();
     tt.increment().increment().increment().print();
  }
}

     一個類中定義兩個構造函數,在一個構造函數中通過 this 這個引用來調用另一個構造函數,這樣應該可以實現。

    這樣的實現機制在實際做應用開發的時候有會有什么樣子的用處納?貼下寫的代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class ThisDemo {
  String name;
  int age;
  public ThisDemo (){
    this.age=21;
  }  
  public ThisDemo(String name,int age){
    this();
    this.name="Mick";
  }  
 private void print(){
     System.out.println("最終名字="+this.name);
     System.out.println("最終的年齡="+this.age);
  }
  public static void main(String[] args) {
    ThisDemo tt=new ThisDemo("",0); //隨便傳進去的參數
    tt.print();
  }
}

    看上面這段代碼雖然很短,理解起來似乎也很順理成章,在有參數的構造函數中賦值 name 在無參數的當中賦值age屬性。

    但我個人覺得其中有點問題,實例化一個類應該先為對象 ThisDemo 分配內存,先調用構造函數 ThisDemo(String name,int age)。

    執行第一行時,調用 ThisDemo()構造函數,也就是說這里應該會有兩個內存空間的,一個是為ThisDemo(String name,int age) 分配的內存空間和另一個是 ThisDemo() 執行空間。

    為什么最后打印出來的結果是都實例化了一個對象中的兩個屬性name和age納?請大牛賜教!

   總結一下:

   1) this 關鍵字是類內部當中對自己的一個引用,可以方便類中方法訪問自己的屬性;

   2)可以返回對象的自己這個類的引用,同時還可以在一個構造函數當中調用另一個構造函數。

如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://blog.csdn.net/qq_37267015/article/details/54289670

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 一级黄色片武则天 | 天天碰天天操 | 污污短视频 | 一级一级一级一级毛片 | 国产亚洲精品久久久闺蜜 | 日韩电影av在线 | 亚洲一区成人在线 | 国产亚洲精品成人 | 91嫩草丨国产丨精品入口 | 午夜国内精品a一区二区桃色 | 一级黄色在线免费观看 | 十级毛片 | 91在线视频网址 | 欧美人的天堂一区二区三区 | 免费毛片播放 | 国内精品免费一区二区2001 | 欧美成人一区二区三区电影 | 国产午夜精品一区二区三区视频 | 日韩电影av在线 | 五月天影院,久久综合, | 一区二区高清视频在线观看 | 91成人午夜性a一级毛片 | 91精品国产综合久久久动漫日韩 | 韩国精品久久久 | 日本黄色成人 | 国产91精品欧美 | 亚洲一区二区三区视频免费 | 91看片.| 久久一区三区 | 久久久一二三 | 精品一区免费 | 亚洲欧洲av在线 | 国产精品久久久久久久久久久久久久久久 | 91短视频在线观看 | av电影院在线观看 | 欧美在线观看视频网站 | 成人福利电影在线观看 | 久久影城 | 日本精品久久久一区二区三区 | 欧美性生活区 | 亚洲视频综合网 |