java基礎——引出方法


開發遵循的原則之一:
DRY原則, dont repeat yourself

方法(method),函數(function),其實就是指一個特定的功能操作:
程序中完成獨立功能,並且能重複使用的一段代碼的集合;
Main方法有JVM來負責調用,我們只管啓動JVM

方法定義格式:
[修飾符]方法的返回值類型 方法的名稱([形式參數1,形式參數2...])
{
方法體;
[return 值]
}
方法必須調用才能生效
方法使用了static修飾 :
此時我們使用方法所在類的方法.方法名(參數)
方法使用了沒有static修飾 :
此時我們使用方法所在類的對象來調用

方法定義的位置:
  1. 在類中定義,在java中最小的程序單元是類
  2. 方法定義在其他方法之外,方法之間是兄弟關係
  3. 定義的先後順序不影響
方法中的專業術語
修飾符:public(方法訪問權限) static(方法屬於類,直接使用類名調用即可)等
返回值類型:方法在完成一個功能,該功能完成後是否需要給調用者返回一個結果
如果不需要給調用者返回結果,此時就用關鍵字void聲明,無返回意思.
方法名稱:遵循標識符的規範,使用駝峯表示,首字母小寫,若是多個單詞表示,以後的每個單詞首字母大寫
形式參數:方法圓括號中的變量,僅僅是站位而已,參數的名稱實際無所謂,形參可以有多個
參數列表:參數列表 == 參數的類型 + 參數的個數 + 參數的順序
方法簽名: 方法前面 == 方法名稱 + 方法參數列表
在同一個類中,方法前面是唯一的
方法體:方法{}中的代碼,表示具體完成該功能的代碼
返回值:在方法內部,使用return關鍵字
功能1給調用者返回一個結果值,此時該方法不能用void修飾
功能2 結束當前方法
實際參數:調用方法適合,實際傳輸的參數值

方法重載設計
需求1:在同一個類中,分別定義求兩個整數,小數的和的方法

需求2:在同一個類中,分別打印不同的類型
方法重載的設計
重載方法是定義在同一個類中,某方法允許存在一個以上的方法同名,只要他們的參數列表不同即可
方法重載的作用:屏蔽了同一個功能的方法由於參數不同造成的方法名稱不同
方法重載判斷的的原則: 兩同一個不同
注意:方法重載和方法的返回值類型無關係,只是一般要求返回值一致
參數列表和參數的名稱沒有關係,方法的重載和形參沒有關係





System.out.print()爲什麼可以打印多種類型
方法遞歸操作




JVM的內存模型
JVM內存劃分,人爲的根據不同的內存空間的存儲特點以及存儲的數據:

程序計數器 當前線程所執行的字節碼的行號指示器
本地方法棧 爲虛擬機使用的native方法服務

Java虛擬機棧(stack):描述java方法執行的,每個方法被執行的時候都會同時創建一個棧幀用於存儲局部變量表,操作棧,動態鏈接,方法出口等信息
每個方法創建一個棧幀,棧幀存放了當前方法的數據信息,當方法調用完畢,該方法的棧幀就被銷燬了

Java堆(heap):被所有線程共享的一塊內存區域,在虛擬機啓動時創建,所有對象實例以及數組都要在對上分配(使用new關鍵字,就表示在堆中開闢一塊新的存儲區域)

方法區:線程共享的內存區域,存儲已被虛擬機加載的類信息,常量,靜態變量即時編譯器編譯後的代碼數據等
GC(garbage collection)簡述
Java的自動垃圾回收機制:簡單理解爲
程序員不要手動的去控制內存的釋放,當JVM發覺內存資源緊張的時候,就會自動地去清理無用對象(沒有被引用的對象)所佔用的內存空間.

數組:一組數據

所謂數組,是相同數據類型的元素按一定順序排列的集合。若將有限個類型相同的變量的集合命名,那麼這個名稱爲數組名。組成數組的各個變量稱爲數組的分量,也稱爲數組的元素,有時也稱爲下標變量。用於區分數組的各個元素的數字編號稱爲下標。數組是在程序設計中,爲了處理方便, 把具有相同類型的若干元素按無序的形式組織起來的一種形式。[這些無序排列的同類數據元素的集合稱爲數組。

數組初始化
Java中數組必須先初始化才能使用,所謂初始化就是給元素分配內存,並未每個元素賦初始值
初始化數組有兩種方式:
靜態初始化
動態初始化
無論,以哪種方式初始化,一旦初始化成功,數組的長度固定了,不能改變,數組是定長得的
數組的長度固定了,不能改變,如果要更改,只能重新做初始化


靜態初始化:
我們來爲每一個數組元素設置初始化值,而數組的長度由系統決定
語法:
數組元素類型[] 數組名 = new 素組元素類型[] {元素1,元素2,元素3.......};
Int[] nums = new int[]{1,5,6,7};
簡單寫法: int[] nums = {1,2,3,4};
簡單寫法必須聲明之後立刻初始化,不能先聲明後初始化;

動態初始化:
我們來爲每一個數組長度,而每一個數組元素由系統決定
語法
數組元素類型[] 數組名 = new 素組元素類型[length] ;



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