java學習筆記2015-6-6,學習筆記2015-6-6

來源:互聯網
上載者:User

java學習筆記2015-6-6,學習筆記2015-6-6
類和對象  (理念型  Demo示範)

   物件導向   java  C++   封裝  繼承  多態    類  對象

   面向過程   C    結構體


1、擷取使用者輸入  2、邏輯判斷   3、運算       輸出結果


面向過程  C   結構體   內容:指標  結構體   標頭檔


類是物件導向程式設計語言的基礎


類?  人   電腦    只要是一群共同事物(具有共同特徵和動作的)集合  物以類聚


       集合/模版


       描述是描述整個類。(描述共同動作  共同特徵  不負責具體指代的實現)


對象  從集合/模版  中構造了一個具體指代 (賦值/描述一些具體的值 或者操作)


       調用時   通過對象調用   (static)


關聯  


屬性建義用private
方法建議用public  


作業:


//德瑪跟寒冰對戰  PK遊戲 回合制的


//每個回合 德瑪和寒冰互相攻擊一次 德瑪攻擊了寒冰一次  寒冰攻擊了德瑪一次


//不停地打 打到一方血量低於0為止!


總結:
類  描述幾個類   一個執行類


描述類  屬性  方法


執行類: 主函數  調用代碼  商務程序控制


形參,他是函數與外界互動的橋樑  本類與外部類


下次課  構造器   this  




//需求分析:XX汽車在道路上行駛的狀態  看到前進  後退  停車


//根據需求  抽離名詞  品牌  型號  汽車  道路  狀態   距離裡程


//1、哪些名詞可以歸為一類  歸類到不能歸為止 2、哪些名詞又是屬於哪些名詞中的


//汽車:品牌  型號   狀態  道路:   名詞要麼是類  要麼是屬性   要麼是多餘的


//抽離動詞  行駛  前進  後退  停車   動詞必然是類的方法 (函數)




//汽車:行駛  前進  後退  停車




//建立一個類:Car 汽車類


//市場調研-》需求分析-》概要設計-》詳細設計-》代碼設計-》代碼編寫-》測試-》Demo->上線


//汽車類:品牌  型號  狀態


//直接能夠寫在類的程式碼片段中的  只有  屬性  方法


public class Car{


      //屬性  (是一種全域變數)  屬性的命名也盡量要有含義
      //因為屬性是描述該類特徵的名詞


    String  brand;     //品牌  屬性的命名和變數的命名規則一樣  全小寫
    String  model;    // 型號 限定符 資料類型  屬性名稱(分析得來)
    String  statu; 


    int length;   //裡程
   //***********************************************************


   //方法是描述該類動作的動詞


   //*限定符* 返回值類型   方法名(形參列表){程式碼片段}


   public void drive(){
   
      // length++;


       System.out.print(brand+"品牌的"+model+"型號的汽車狀態為:"+statu+"狀態!");
   }


   public void ahead(){


      length++;
 
       System.out.print(brand+"品牌的"+model+"型號的汽車狀態為:"+statu+"狀態!");


   }


   public void back(){


       length--;


       System.out.print(brand+"品牌的"+model+"型號的汽車狀態為:"+statu+"狀態!");


   }


   public void stop(){


       System.out.print(brand+"品牌的"+model+"型號的汽車狀態為:"+statu+"狀態!");


   }


}


/*  擇善教育第2課作業
 *  類和對象
 *  寒冰和德瑪的對戰遊戲 Dema類的實現
 *  指導老師 Bear
 *  學生 曹昆
 *  2015-6-6
*/


/* 需求分析


 * 德瑪跟寒冰對戰  PK遊戲 回合制的


 * 每個回合 德瑪和寒冰互相攻擊一次 德瑪攻擊了寒冰一次  寒冰攻擊了德瑪一次


 * 不停地打 打到一方血量低於0為止!
 
*/


public class Dema{


    //定義類的屬性和方法
    private String dname;
    private int dblood;         //生命值
    private int dattackpower;   //攻擊力  攻擊一次給對方的生命值造成的損害




    public void setDName(String dname){
        
        this.dname = dname;
   
    }


    public String getDName(){
        
        return this.dname;


    }


    public void setDBlood(int dblood){
        
        this.dblood = dblood;
   
    }


    public int getDBlood(){
        
        return this.dblood;


    }


    public void setDAttackpower(int dattackpower){
        
        this.dattackpower = dattackpower;


    }


    public int getDAttackpower(){
        
        return this.dattackpower;


    }


   public void DAttack(Hanbing hanbing){
 
      hanbing.setHBlood(hanbing.getHBlood()-this.getDAttackpower());
   
       //System.out.println("名字叫:"+this.getDName()+"的德瑪戰士給予名字叫:"+hangbing.getHName()+"寒冰戰士一次猛擊的攻擊,造成寒冰戰士"+hanbing.getHName()+"損失掉生命值:"+this.getDAttackpower()+",寒冰戰士:"+dema.getHName()+"還剩下生命值:"+hbpower);   


   }


}


/*  擇善教育第2課作業
 *  類和對象
 *  寒冰和德瑪的對戰遊戲 Hanbing類的實現
 *  指導老師 Bear
 *  學生 曹昆
 *  2015-6-6
*/


/* 需求分析


 * 德瑪跟寒冰對戰  PK遊戲 回合制的


 * 每個回合 德瑪和寒冰互相攻擊一次 德瑪攻擊了寒冰一次  寒冰攻擊了德瑪一次


 * 不停地打 打到一方血量低於0為止!
 
*/


public class Hanbing{


    //定義類的屬性和方法
    private String hname;
    private int hblood;         //生命值
    private int hattackpower;   //攻擊力  攻擊一次給對方的生命值造成的損害




    public void setHName(String hname){
        
        this.hname = hname;
   
    }


    public String getHName(){
        
        return this.hname;


    }


    public void setHBlood(int hblood){
        
        this.hblood = hblood;
   
    }


   public int getHBlood(){
        
        return this.hblood;
   
    }


    public void setHAttackpower(int hattackpower){
        
        this.hattackpower = hattackpower;


    }


    public int getHAttackpower(){
        
        return this.hattackpower;


    }


   public void HAttack(Dema dema){
 
       dema.setDBlood(dema.getDBlood() - this.getHAttackpower());
   
       //System.out.println("名字叫:"+this.getHName()+"的寒冰戰士給予名字叫:"+dema.getDName()+"德瑪戰士一次猛擊的攻擊,造成德瑪戰士"+dema.getDName()+"損失掉生命值:"+this.getHAttackpower()+",德瑪戰士:"+dema.getDName()+"還剩下生命值:"+demapower);   


   }


}



/*  擇善教育第2課作業
 *  類和對象
 *  寒冰和德瑪的對戰遊戲 執行類的實現
 *  指導老師 Bear
 *  學生 曹昆
 *  2015-6-6
*/


/* 需求分析


 * 德瑪跟寒冰對戰  PK遊戲 回合制的


 * 每個回合 德瑪和寒冰互相攻擊一次 德瑪攻擊了寒冰一次  寒冰攻擊了德瑪一次


 * 不停地打 打到一方血量低於0為止!
 
*/


public class Manager{


      public static void main(String args[]){


          Hanbing hb = new Hanbing();
          Dema dm = new Dema();
          
          hb.setHName("張三");
          hb.setHBlood(1000);
          hb.setHAttackpower(95);


          dm.setDName("李四");
          dm.setDBlood(900);
          dm.setDAttackpower(108);


          while(true){


              hb.HAttack(dm);


              System.out.println("寒冰戰士:"+hb.getHName()+" 給予德瑪戰士:"+dm.getDName()+" 一次攻擊,造成德瑪戰士:"+dm.getDName()+" 損失掉生命值:"+hb.getHAttackpower()+",德瑪戰士:"+dm.getDName()+" 還剩下生命值:"+dm.getDBlood());
              
              if(hb.getHBlood()<=0 || dm.getDBlood()<=0) 
              
                  break;   


              dm.DAttack(hb);
          
              System.out.println("德瑪戰士:"+dm.getDName()+" 給予寒冰戰士:"+hb.getHName()+" 一次攻擊,造成寒冰戰士:"+hb.getHName()+" 損失掉生命值:"+dm.getDAttackpower()+",寒冰戰士:"+hb.getHName()+" 還剩下生命值:"+hb.getHBlood());
    
              if(hb.getHBlood()<=0 || dm.getDBlood()<=0)
              
                  break;   
          }


          if(hb.getHBlood()<=0){
                  
                  System.out.println("德瑪戰士:"+dm.getDName()+"勝利!");


              }else{
                  
                  System.out.println("寒冰戰士:"+hb.getHName()+"勝利!");
             }




          
     }
}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.