• <abbr id="chdyf"></abbr>
    <ruby id="chdyf"><acronym id="chdyf"><meter id="chdyf"></meter></acronym></ruby>
    <bdo id="chdyf"></bdo>
    <dfn id="chdyf"><menu id="chdyf"></menu></dfn>
    1. <menuitem id="chdyf"></menuitem><strong id="chdyf"><menu id="chdyf"></menu></strong>

      <rt id="chdyf"><menu id="chdyf"></menu></rt>
      成人小说一区二区三区,伊人精品成人久久综合全集观看,久久HEZYO色综合,中文字幕精品人妻熟女,影音先锋成人网站,我要看免费一级毛片,中国女人做爰A片,中文字幕av久久爽Av

      Java中this關鍵字的詳解

      2019-8-17    seo達人

      在java的學習中,當接觸到類這一章的時候,就會避免不了的接觸到this關鍵字。



      首先,this關鍵字指向的是當前對象的引用



      作用:

                   this.屬性名稱                

                         指的是訪問類中的成員變量,用來區分成員變量和局部變量(重名問題)



                    



      class Test_08{

      public static void main(String [] args){

      //調用無參構造函數,

      Person p1 = new Person();

      p1.setAge(20);

      p1.setName("張三");

      p1.setGender("男");

      System.out.println(""+p1.getName()+" 今年"+p1.getAge()+"歲 性別為:"+p1.getGender());

      }



      }

      class Person{

      private String name;

      private int age;

      private String gender;

      Person(){}

      Person(String name,int age,String gender){

      this.name = name;

      this.age = age;

      this.gender = gender;

      }

      public void setName(String name){

      name = name;

      }

      public String getName(){

      return name;

      }

      public void setAge(int age){

      age = age;

      }

      public int getAge(){

      return age;

      }

      public void setGender(String gender){

      gender = gender;

      }

      public String getGender(){

      return gender;

      }

      }

       







      對Test_08運行后發現,調用的set方法并沒有對 對象中的變量進行賦值,是因為,傳入的參數變量名與類中屬性變量名重復,因此我們在set方法和有參構造方法中加上了this.類屬性名稱,這樣就可以完成對 對象變量的賦值。如下圖:







                   this.方法名稱              

                                      用來訪問本類的成員方法



                    this();                              

                                                          訪問本類的構造方法



                                                          ()中可以有參數的 如果有參數 就是調用指定的有參構造

                 注意事項:

                                  1.this() 不能使用在普通方法中 只能寫在構造方法中

                                  2.必須是構造方法中的第一條語句



      例如,當我們把this()放在有參構造函數的末尾時,例如用this("哈哈");我們先不管語法是否有錯誤,試著按照程序的運行來判斷一下結果,我們可以看出,當在創建對象時,假定調用含有this(“哈哈”)的構造函數,則剛開始存放的值,會被this(“哈哈”)調用的只含有一個參數的構造函數覆蓋,也就是說,最后的name會變成“哈哈”,這是與我們的初衷相違背的,而且運行結果也是報錯,



      當我們換到構造方法的第一句時,則不會有這種錯誤,因為它并不會影響到后面name的賦值。







       







       



      我們接下來把this語句放在構造函數的第一句位置,



      就不會有報錯







       

      ————————————————

      版權聲明:本文為CSDN博主「BetterShon」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。

      原文鏈接:https://blog.csdn.net/weixin_42386014/article/details/81138684

      日歷

      鏈接

      個人資料

      藍藍設計的小編 http://m.wtxcl.cn

      存檔