国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java中的兩個特殊變量this和super

2019-11-18 15:43:27
字體:
來源:轉載
供稿:網友

  在java中有兩個非常非凡的變量:this和super,這兩個變量在使用前都是不需要聲明的。this變量使用在一個成員函數的內部,指向當前對象,當前對象指的是調用當前正在執行方法的那個對象。super變量是直接指向超類的構造函數,用來引用超類中的變量和方法。
因此它們都是非常有用的變量,下面我想介紹一下this和super的使用方法。

  1、this

  讓我們先看一段代碼吧:

  class PersonInformation

  {

   String name,gender,nationality,address;

   int age;

   void PersonInformation(String p_name,String p_gender,String p_nationality,String p_address,int p_age)

   {

    name=p_name;

    gender=p_gender;

    nationality=p_nationality;

    address=p_address;

    age=p_age;

   }

  }
 
  你會發現,在PersonInformation()函數中這個對象的方法提示可以直接訪問對象的成員變量的,而且在同一個范圍中,定義兩個相同的名字的局部變量是不答應的,假如確實想使類的成員變量和方法的參數或方法自己定義的局部變量同名的話就需要想一種方法使成員變量與更它同名的方法參數或局部變量區分開來,這就要使用到this變量。下面我想改寫一下上面的代碼,使PersonInformation類的構造函數的每個參數都有與對象成員變量相同的名字,而成員變量的初值由參數給出。

  class PersonInformation

   {

    String name,gender,nationality,address;

    int age;

    void PersonInformation(String name,String gender,String nationality,String address,int age)

    {

    this.name=name;

    this.gender=gender;

    this.nationality=nationality;

    this.address=address;

    this.age=age;

    }

   }

  由上一例中,我們可以看出,該構造函數中必須使用this,this在方法體重用來指向引用當前正在執行方法的那個對象實例,this變量的類型總是為包含前執行方法的類,上例中,我們要區別參數name和成員變量name,寫成name=name顯然是不答應的,在參數或局部變量名與類成員變量同名的時候,由于參數或局部變量的優先級高,這樣在方法體中參數名或局部變量名將隱藏同名的成員變量,因此,為了值名成員變量,你必須使用this顯示地指明當前對象。

  有時候會碰到這種情況,我們全面的訪問當前對象,而不是訪問某一個個別的實例對象,我們也可以使用this,并利用Java中的toString()方法(它能夠返回一個描述這個對象的字符串)假如把任何一個對象傳遞到System.out.PRintln方法中,這個方法調用這個對象的toString方法,并打印出結果字符串,所以,我們可以用如下方法System.out.println(this),來打印出任何對方法固有參數的當前狀態。

  this還有一個用法,就是構造函數的第一個語句,它的形式是this(參數表),這個構造函數就會調用同一個類的另一個相對的構造函數。請看下面的例子:

  class UserInfo

  {

   public UserInfo(String name)

   {

    this(name,aNewSerialNumber);

   }

   public Userinfo(String name,int number)

   {

    userName=name;

    userNumber=number;

   }

   }

  假如你調用UserInfor newinfotable = new UserInfo("Wayne Zheng")后,就會自動調用UserInfo(String

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 锦州市| 江都市| 天峨县| 天长市| 吉隆县| 淳化县| 湘阴县| 长垣县| 湟中县| 大理市| 织金县| 繁峙县| 筠连县| 大方县| 同心县| 邹城市| 老河口市| 农安县| 怀仁县| 临泽县| 社旗县| 府谷县| 永春县| 宁陕县| 吐鲁番市| 秭归县| 楚雄市| 平乐县| 扎囊县| 阿拉善右旗| 托克逊县| 泾阳县| 枣庄市| 呼玛县| 甘孜| 临颍县| 阿拉善左旗| 信宜市| 罗源县| 民县| 信宜市|