mvc 架構(gòu)

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            74 Posts :: 60 Stories :: 5 Comments :: 0 Trackbacks
          posted on 2007-12-09 17:46 e全 閱讀(130) 評論(0)  編輯  收藏

          通過用static來定義方法或成員,為我們編程提供了某種便利,從某種程度上可以說它類似于C語言中的全局函數(shù)和全局變量。但是,并不是說有了這種便利,你便可以隨處使用,如果那樣的話,你便需要認(rèn)真考慮一下自己是否在用面向?qū)ο蟮乃枷刖幊蹋约旱某绦蚴欠袷敲嫦驅(qū)ο蟮摹:昧耍F(xiàn)在開始討論this&super這兩個(gè)關(guān)鍵字的意義和用法。
            在Java中,this通常指當(dāng)前對象,super則指父類的。當(dāng)你想要引用當(dāng)前對象的某種東西,比如當(dāng)前對象的某個(gè)方法,或當(dāng)前對象的某個(gè)成員,你便可以利用this來實(shí)現(xiàn)這個(gè)目的,當(dāng)然,this的另一個(gè)用途是調(diào)用當(dāng)前對象的另一個(gè)構(gòu)造函數(shù),這些馬上就要討論。如果你想引用父類的某種東西,則非super莫屬。由于this與super有如此相似的一些特性和與生俱來的某種關(guān)系,所以我們在這一塊兒來討論,希望能幫助你區(qū)分和掌握它們兩個(gè)。
            在一般方法中
            最普遍的情況就是,在你的方法中的某個(gè)形參名與當(dāng)前對象的某個(gè)成員有相同的名字,這時(shí)為了不至于混淆,你便需要明確使用this關(guān)鍵字來指明你要使用某個(gè)成員,使用方法是“this.成員名”,而不帶this的那個(gè)便是形參。另外,還可以用“this.方法名”來引用當(dāng)前對象的某個(gè)方法,但這時(shí)this就不是必須的了,你可以直接用方法名來訪問那個(gè)方法,編譯器會(huì)知道你要調(diào)用的是那一個(gè)。下面的代碼演示了上面的用法:
          public class DemoThis
          { 
          private String name; 
          private int age; 
          DemoThis(String name,int age){  
          setName(name);
          //你可以加上this來調(diào)用方法,像這樣:this.setName(name);但這并不是必須的  
          setAge(age);  
          this.print(); br> }  
          public void setName(String name){  
          this.name=name;//此處必須指明你要引用成員變量 
          }
          public void etAge(int age){ 
          this.age=age; 
          } 
          public void print(){  
          System.out.println("Name="+name+" ge="+age);
          //在此行中并不需要用this,因?yàn)闆]有會(huì)導(dǎo)致混淆的東西 
          } 
          public static void main(String[] args){  
          DemoThis dt=new DemoThis("Kevin","22");
            這段代碼很簡單,不用解釋你也應(yīng)該能看明白。在構(gòu)造函數(shù)中你看到用this.print(),你完全可以用print()來代替它,兩者效果一樣。下面我們修改這個(gè)程序,來演示super的用法。


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 正镶白旗| 香格里拉县| 甘肃省| 芒康县| 洞头县| 阿鲁科尔沁旗| 永福县| 莱阳市| 南澳县| 木兰县| 辽阳市| 苗栗市| 三河市| 恩平市| 枞阳县| 惠州市| 宣城市| 合水县| 基隆市| 尉犁县| 六枝特区| 大理市| 乃东县| 昌图县| 策勒县| 厦门市| 类乌齐县| 安吉县| 峨眉山市| 长岭县| 昌乐县| 南郑县| 沽源县| 宣威市| 大宁县| 临沂市| 龙陵县| 呼图壁县| 肃南| 迁西县| 五家渠市|