DAY_04 函數及變量等的複習

1、函數的概念?函數的格式?格式的解釋說明

(1)概念:完成特定功能的代碼塊。

(2)格式:

     修飾符 返回值類型 方法名(參數類型 參數1,參數類型 參數2...) {

          方法體語句;

          return 返回值;

     }

(3)格式解釋說明:

     修飾符:目前就用 public static。後面再詳細講解其他修飾符

     返回值類型:就是功能結果的數據類型

     方法名:就是起了一個名字,方便我們調用該方法。

     參數類型:就是參數的數據類型

     參數名:就是變量

     參數分類:

          實參:實際參與運算的數據

          形參:方法上定義的,用於接收實際參數的變量

     方法體語句:就是完成功能的代碼塊

     return:結束方法

     返回值:就是功能的結果,由return帶給調用者。

------------------------------------------------------------------

2、函數的調用

     A:明確返回值類型的函數調用

     B:void類型的函數調用

------------------------------------------------------------------

3、什麼是函數重載?

在同一個類中,方法名相同,參數列表不同的函數,與返回值無關。

------------------------------------------------------------------

4、局部變量和成員變量的區別?

(1)在類中的位置不同

     成員變量:類中方法外

     局部變量:方法定義中或者方法聲明上

(2)在內存中的位置不同

     成員變量:在堆中

     局部變量:在棧中

(3)生命週期不同

     成員變量:隨着對象的創建而存在,隨着對象的消失而消失

     局部變量:隨着方法的調用而存在,隨着方法的調用完畢而消失

(4)初始化值不同

     成員變量:有默認值

     局部變量:沒有默認值,必須定義,賦值,然後才能使用

------------------------------------------------------------------

5、匿名對象是什麼?應用場景是什麼?

(1)沒有名字的對象

(2)應用場景

     A:調用方法,僅僅只調用一次的時候。

     b:可以作爲實際參數傳遞。

------------------------------------------------------------------

6、封裝是什麼?java中封裝的體現有哪些?請舉例說明。

(1)隱藏實現細節,提供公共的訪問方式

(2)好處:

     A:隱藏實現細節,提供公共的訪問方式

     B:提高代碼的複用性

     C:提高代碼的安全性

(3)設計原則

     把不想讓外界知道的實現細節給隱藏起來,提供公共的訪問方式

(4)private是封裝的一種體現。

     封裝:類,方法,private修飾成員變量

------------------------------------------------------------------

7、private關鍵字是什麼? private關鍵字的應用場景?

(1)私有的意義,可以修飾成員變量和成員方法

(2)特點:

     被private修飾的後的成員只能在本類中被訪問

(3)private的應用:

     以後再寫一個類的時候:

          把所有的成員變量給private了

          提供對應的getXxx()/setXxx()方法

------------------------------------------------------------------

8、this關鍵字是什麼?this關鍵字的應用場景?

(1)代表當前類的引用對象

     記住:哪個對象調用方法,該方法內部的this就代表那個對象

(2)this的應用場景:

     A:解決了局部變量隱藏成員變量的問題

     B:其實this還有其他的應用,明天講解。

------------------------------------------------------------------

9、構造方法的作用是什麼?構造方法的特點是什麼?構造方法的注意事項是什麼?構造方法中可不可以寫return語句呢?

(1)作用:用於對對象的數據進行初始化

(2)格式:

     A:方法名和類名相同

     B:沒有返回值類型,連void都不能有

     C:沒有返回值

(3)構造方法的注意事項

     A:如果我們沒寫構造方法,系統將提供一個默認的無參構造方法

     B:如果我們給出了構造方法,系統將不再提供默認構造方法

          如果這個時候,我們要使用無參構造方法,就必須自己給出。

          推薦:永遠手動自己給出無參構造方法。

(4)構造方法中可不可以有return語句

     可以。而是我們寫成這個樣子就OK了:return;

     其實,在任何的void類型的方法的最後你都可以寫上:return;

------------------------------------------------------------------

10、給成員變量賦值有幾種方式?

     A:setXxx()

     B:帶參構造方法

------------------------------------------------------------------

11、一個類的成員變量初始化過程

Student s = new Student();

(1)把Student.class文件加載到內存

(2)在棧內存爲s開闢空間

(3)在堆內存爲學生對象申請空間

(4)給學生的成員變量進行默認初始化。null,0

(5)給學生的成員變量進行顯示初始化。林青霞,27

(6)通過構造方法給成員變量進行初始化。劉德華,50

(7)對象構造完畢,把地址賦值給s變量

------------------------------------------------------------------

12、static關鍵字是什麼?有什麼特點?什麼時候用呢?

(1)靜態的意思。可以修飾成員變量和成員方法。

(2)靜態的特點:

     A:隨着類的加載而加載

     B:優先與對象存在

     C:被類的所有對象共享

          這其實也是我們判斷該不該使用靜態的依據。

          舉例:飲水機和水杯的問題思考

     D:可以通過類名調用

          既可以通過對象名調用,也可以通過類名調用,建議通過類名調用。

(3)靜態的注意事項;

     A:在靜態方法中沒有this對象

     B:靜態只能訪問靜態(代碼測試過)

(4)靜態變量和成員變量的區別

     A:所屬不同

          靜態變量:屬於類,類變量

          成員變量:屬於對象,對象變量,實例變量

     B:內存位置不同

          靜態變量:方法區的靜態區

          成員變量:堆內存

     C:生命週期不同

          靜態變量:靜態變量是隨着類的加載而加載,隨着類的消失而消失

          成員變量:成員變量是隨着對象的創建而存在,隨着對象的消失而消失

     D:調用不同

          靜態變量:可以通過對象名調用,也可以通過類名調用

          成員變量:只能通過對象名調用

------------------------------------------------------------------

13、main方法各種修飾符及參數的解釋?

    public:權限最大

     static:不用創建對象調用

     void:返回值給jvm沒有意義

     main:就是一個常見的名稱。

     String[] args:可以接收數據,提供程序的靈活性

------------------------------------------------------------------


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