java基礎學習_面向對象(上)03_day08總結
=============================================================================
=============================================================================
涉及到的知識點有:
0:前面學習通過方法對代碼進行改進,為什麽要給方法使用靜態呢?
1:Java如何制作幫助文檔(API)(了解)
2:通過JDK提供的幫助文檔(API)學習了Math類(掌握)
3:Java中的代碼塊(理解)
=============================================================================
=============================================================================
0:前面學習通過方法對代碼進行改進,為什麽要給方法使用靜態呢?
答:因為main方法是靜態的,而靜態方法只能訪問靜態的成員變量和靜態的成員方法。
所以之前我們的方法是使用靜態來修飾的,即靜態的方法。
如果我們把static去掉呢?即該如何調用非靜態的方法呢?
答:通過創建對象,使用對象進行調用啊!
測試類的作用是什麽?
答:創建其他類的對象,調用其他類的功能。
在同一個文件夾下,Java的類定義在兩個文件中和定義在一個文件中其實是一樣的。
---------------------------------------
工具類中的方法使用靜態修飾後,又讓外界不能通過創建對象方式去訪問該方法,只能通過工具類名來訪問該方法,該如何辦呢?
答:把工具類中的構造方法私有即可。
如下圖所示01:
-----------------------------------------------------------------------------
1:Java如何制作幫助文檔(API)(了解)
步驟如下:
(1)寫一個工具類
(2)對這個類加入文檔註釋
(3)用工具解析文檔註釋
javadoc工具
(4)格式
javadoc -d 目錄 -author -version ArrayTool.java
制作幫助文檔(API)出錯問題解決:
找不到可以文檔化的公共或受保護的類
這句話告訴我們對想要操作的類的權限不夠。在類前面加上public即可。
如下圖所示02:
---------------------------------------
將來做開發的時候,我們給別人的東西就是Xxx.class文件和幫助文檔(API)。別人通過幫助文檔(API)來使用Xxx.class文件。
這就是面向對象思想,我才不管你是怎們實現的呢!我滿足你的條件會用就可以。
-----------------------------------------------------------------------------
2:通過JDK提供的幫助文檔(API)學習了Math類(掌握)
(1)API(Application Programming Interface)
應用程序編程接口(幫助文檔)
(2)如何使用幫助文檔(API)呢?
1:打開幫助文檔
2:點擊顯示,找到索引,看到輸入框
3:知道你要找誰?以Scanner舉例
4:在輸入框裏面輸入Scanner,然後回車
5:第一步:看包
java.lang包下的類不需要導入,其他的全部需要導入。
要導入:
java.util.Scanner
6:再簡單的看看該類的解釋說明和例子,別忘了看看該類的版本。
7:看類的結構:
成員變量 字段摘要
構造方法 構造方法摘要
成員方法 方法摘要
8:學習構造方法的兩種情況:
A:有構造方法 就創建該類的對象,通過對象調用。
B:沒有構造方法 該類的成員變量和成員方法可能都是靜態的,通過類名調用。
9:看成員方法:
A:看左邊
看是否是靜態的成員方法:如果是靜態,可以通過類名調用。
看返回值類型:人家返回什麽,你就用什麽接收。
B:看右邊
看方法名:方法名稱不要寫錯了。
看參數列表:人家要什麽參數,你就給什麽參數;人家要幾個參數,你就給幾個參數。
(3)API中的Math類的示範使用
A:是針對數學執行基本運算進行操作的類
B:沒有構造方法,因為它的成員都是靜態的。
C:產生隨機數
public static double random()
返回值為double的正值,大於等於0.0 ,小於1.0。即:[0.0, 1.0)
返回的值是從該範圍(大約)均勻分布的偽隨機選擇的。
D:如何產生一個1~100([1, 100])之間的隨機數
int number = (int)(Math.random() * 100) + 1;
E:猜數字小遊戲
-----------------------------------------------------------------------------
3:Java中的代碼塊(理解)
(1)在Java中用{}括起來的代碼。
(2)代碼塊分類:(根據其位置和聲明的不同)
A:局部代碼塊
在方法定義中,用於限定變量的生命周期,及早釋放,提高內存利用率。
B:構造代碼塊
在類中方法外出現(即在類中的成員位置),可以把多個構造方法方法中相同的代碼存放到一起,用於對對象進行初始化,每次調用構造方法都執行,並且在構造方法前執行。
C:靜態代碼塊
在類中方法外出現(即在類中的成員位置),並加上static修飾,用於對類進行初始化,靜態在類加載的時候就執行了,並且只執行一次。
D:同步代碼塊
多線程部分講解。
(3)面試題:
靜態代碼塊、構造代碼塊、構造方法的執行順序問題?
靜態代碼塊 > 構造代碼塊 > 構造方法
只執行一次 每次調用構造方法都執行
(4)代碼塊練習題:
看代碼寫程序的執行結果。
=============================================================================
java基礎學習_面向對象(上)03_day08總結