Java零基礎學習-----面向對象(一)

面向對象編程的概念

萬物皆對象

面向對象指以屬性和行爲的觀點去分析顯示生活中的事物

面向對象編程指先以面向對象的思想進行分析,然後使用面向對象的編程語言進行表達的過程

面向對象編程是軟件產業化發展的需求

理解面向對象的思想精髓(封裝,繼承,多態),至少掌握一種編程語言

C語言:面向過程

JAVA:面向對象

C++:即是面向對象又是面向過程

 

 

類和對象的概念

2020年6月10日

10:24

對象主要指現實生活中客觀存在的實體,在Java語言中對象體現內存空間中的一塊存儲區域。

類簡單來就是“分類”,是對具有相同特徵和行爲的多個對象共性的抽象描述,在Java語言中體現一種引用數據類型,裏面包含了描述特徵/屬性的成員變量以及描述行爲的成員方法。

類是用於構建對象的模板,對象的數據結構有它的類來定義。

 

 

類的定義:

class  類名{           class Person{

類體;          }

}

注意:

通常情況下,當類名由多個單詞組成時,要求每個單詞的首字母都要大寫。

 

成員變量的定義:

class 類型{                                              class Person{

數據類型 成員變量名=初始值;               String name;

}                                                               }

 

當成員變量由多個單詞組成時,通常要求從第二個單詞起每個單詞的首字母大寫

 

 

 

對象的創建:

new 類名();            new Person();//匿名對象

注意:

1.當一個類定義完畢後,可以使用new關鍵字來創建該類的對象,這個過程叫做類的實例化。

2.創建對象的本質就是在內存空間堆區申請一塊存儲區域,用於存放該對象獨有特徵信息。

 

引用的定義

基本概念:

1.使用引用數據類型定義的變量叫做引用型變量,簡稱爲“引用”。

2.引用變量主要用於記錄對象在堆區中的內存地址信息,便於下次訪問。

語法格式:

類名 引用變量名;

引用變量名.成員變量名;

 

Person p =new Person();

P.name="張飛";

System.out.println(p.name);

 

成員變量的初始值

對象創建後,其中成員變量可以按照默認的方式初始化,具體規則如下:

 

 

其中float和double 默認初始值因爲0.0

 

例子:

 

 

 

 

成員方法的定義:

 

Class 類名{                                                       class Person{

返回值類型 成員方法名(形參列表){              void show(){

成員方法體;                                               System.out.println("輸出");

}                                                                      }

}                                                                         }

 

當成員方法明由多個單詞組成時,要求從第二個單詞起每個單詞的首字母大寫。

 

 

 

返回值類型詳解(方法體內返回到方法體外的數據內)

1.返回值主要指從方法體內返回到方法體外的數據內容。

2.返回值類型主要指返回值的數據類型,可以是基本數據類型,也可以是引用數據類型

3.當返回的數據內容是66時,則返回值類型寫int

4.在方法體中使用return關鍵字可以飯hi具體的數據內容並結束當前方法。

5.當返回的數據內容是66時,則方法體中寫return 66;

6.當該方法不需要返回任何數據內容時,則返回值類型寫void即可。

 

 

形參列表的詳解:(將方法體外的數據內容帶入到方法體內部

1.形式參數主要用於將方法體外的數據內容帶入到方法體內部

2.形式參數列表主要指多個形式參數組成的列表,語法格式如下:

數據類型 形參變量名1,數據類型 形參變量名2,….

3.當帶入的數據內容時“hello”時,則形參列表爲String s;即可

4.當帶入數據內容是66和“hello”時,則形參寫int i,即可

5.若該方法不需要帶入任何數據是,則形參列表則什麼也不寫。

 

 

方法體詳解

1.成員方法體主要用於編寫描述該方法的功能語句塊

2.成員方法可以實現方法的重用,簡化代碼。

 

 

方法的調用“

1.引用變量名。成員方法明(實參列表);

2.實際參數列表主要用於堆形式參數列表進行初始化,因此參數的個數,類型以及順序都要完全一致。

3.實際參數可以傳遞直接量,變量,表達式,方法的調用等。

 

 

可變長參數

1.返回值類型 方法名(參數的類型 …參數名)

2.方法參數部分指定類型的參數個數是可以改變的,也就是0~n個。

3.一個方法的形參列表中最多隻能聲明一個可變長形參,並且需要放到參數列表的末尾。

可變長參數必須放到後面

 

 

 

 

參數傳遞的注意事項:

1.基本數據類型的變量作爲方法的參數傳遞時,形參變量數值的改變通常不會影響實參變量的數值,因爲兩個變量有各自獨立的內存空間。

2.引用數據類型的變量作爲方法的參數傳遞時,形參變量指向內容改變會影響到實參變量指向內容的數值,因爲兩個變量指向同一塊內存空間

3.當引用數據類型的變量作爲方法的參數傳遞時,若形參變量改變指向後再改變指定的內容,則通常不會影響到實參變量指向內容的改變,因爲兩個變量指向不同的內存空間。

 

 

 

基本類型裏放的是值,而引用數據類型裏放的是地址。)

 

 

 

 

內存結構之戰區

1.棧用於存放程序運行過程當中所有的局部變量。一個運行的java程序從開始到結束會有多次方法的調用。

2.JVM會爲每一次方法的調用在棧中分配一個對應的空間,這個空間稱爲該方法的棧幀。一個棧幀對應一個正在調用中的方法,棧幀中存儲了該方法的參數,局部變量等數據。

 

傳參的相關概念:

1.參數分爲形參和實參,定義方法時的參數叫形參,調用方法時傳遞的參數叫實參。

2.調用方法時採用值傳遞就是把實參傳遞給形參,方法內部其實是在使用形參。

3.所謂值傳遞就是 ,當參數是基本類型時,傳遞參數的值,比如傳遞i=0,真實傳遞,把0賦值給了形參。當參數是對象時,傳遞的是對象的值,也就是把對象的地址賦值給了形參。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章