1. 程式人生 > >Java面向對象一(封裝 繼承 多態 類 對象 方法)

Java面向對象一(封裝 繼承 多態 類 對象 方法)

很好 new tex 子類重寫 概念 pan -- 3.1 復用

1.封裝:主要實現了隱藏細節,對用戶提供訪問接口,無需關心方法的具體實現。

  如下,人這個類封裝了很多人的屬性和行為;

2.繼承:很好的實現了代碼的復用,提高了編程效率。

人{
年齡(屬性一)
身高(屬性二)
性別(屬性三)

做事(行為之一)
走路(行為之二)
說話(行為之三)
}

教師{
年齡(屬性一)
身高(屬性二)
性別(屬性三)

做事(行為之一)
走路(行為之二)
說話(行為之三)

教書(行為之四)
}


教師繼承了人的屬性和行為,額外多出的是教書的行為。所以可以寫成        教師 繼承了 人這個類 的屬性行為
額外多出 教書的行為。

教師extends 人{

教書(行為之三)
}

3.多態:程序的可擴展性及可維護性增強。

多態性就是指父類的某個方法被其子類重寫時,可以各自產生自己的功能行為。簡單來說,多態是具有表現多種形態的能力的特征。

當一個類有很多子類時,並且這些子類都重寫了父類中的某個方法。那麽當我們把子類創建的對象的引用放到一個父類的對象中時,就得到了該對象的一個上轉型對象,那麽這個上轉的對象在調用這個方法時就可能具有多種形態.

對象&類

1.對象是類的一種實例化, 對象用"屬性"和"方法"來對應描述事物所具有的"靜態屬性"和"動態屬性"。

2.類是用於描述同一類形的對象的一個抽象的概念, 類中定義了這一類對象應該具有的"靜態屬性"和"動態屬性"

3.合適的方法出現在合適的類裏

我理解的類,對象,方法:

1.類(具有相同屬性和方法的對象的集合):首先它是抽象化的,沒有具體指某個,而是指某一類。

  比如說:人,汽車,動物,植物。

  沒有指具體哪個人(不管是大人,小孩,不管男女,只要是人,就屬於人這個類)

  也沒有指具體哪輛汽車(不管什麽牌子的汽車,不管幾個輪子,只要它是汽車,就屬於汽車這個類)。

  

public class Car{
  
}

2.對象(有屬性和方法):類的實例化 -----------萬物皆是對象--------------

  比如說:具體某個人(我),具體某輛車(我的這輛車),具體某個動物(這只貓)。

  

3.方法(函數,成員函數): 就是完成特定功能的代碼塊

  比如說:人吃飯,剎車等都是方法。  

  3.1普通方法

  格式:

修飾符 返回值類型 方法名(參數類型 參數名1,參數類型 參數名2...) {
  方法體語句;
  return 返回值;    //void類型  不用寫return
}

  

  3.2構造方法

特點:

1.方法名稱和類名相同
2.不用定義返回值類型
3.不可以寫return語句

作用:

給對象初始化

構造方法的細節:

當一個類中沒有定義構造函數時,系統會默認添加一個無參的構造方法。

當在類中自定義構造方法之後,默認的無參構造方法消失(如果需要無參構造方法需手動添加)。

public Car{
     private String color;   權限修飾符private   

     public void setColor(String color) {
        this.color = color;
     }  //這是一個set方法

     public String getColor() {
         ....
     }  //這是一個get方法
      
}     // 這就是一個類,具有共有屬性,方法;




public static void main(String[] args) {
    Car a=new Car();        //實例化Car類(傳說中的New一下)     a就是實例化之後的類,也就是對象
    a.setColor="紅色";
  String s = a.getColor;
  system.out.println(s); //輸出車的顏色
}

Java面向對象一(封裝 繼承 多態 類 對象 方法)