大家好,這是我的第一篇博客,在這里我想跟大家分享一下Java最基礎的Class and Object,也就是我們熟說的類和物件,以及對Java方法的探討,
初學時的我因為沒有對這里面的每一行代碼思考透徹,在學習Java中級時感到愈加困難,像是在搭建一棟地基不斷搖晃的大樓,越往上蓋,越是覺得自己輕浮,因此,我決定用相較初學時不同的眼界,回過頭來看最基礎的代碼,也希望我的隨筆能幫助到你們,或是得到你們的不一樣的看法,
完整代碼請見下圖,首先,我用大樓來解釋一下類Class和物件Object之間的關系,
如果物件Object是一棟大樓,那么類Class就是大樓的建造圖紙,在圖紙里面,我們需要寫上:大樓里面的東西例如地板、玻璃等(variables變數),以及大樓的安全保障怎么做(methods方法),如以下代碼所示,

相信你們已經懂了大樓的圖紙應該怎么去寫,接下來我將創建一個計算器類和一個(public)測驗類,計算機類有三個變數:num1, num2, result, 同時還有一個方法void Perform()用以計算num1+num2;測驗類中沒有定義新變數,但是它有一個主方法(我們將在后面詳細說這個主方法)
在主方法中,我們將參考計算器類,創建一個新的object即cal,這里我們需要用到關鍵字new(用以分配記憶體)和建構式constructor:Calc cal; cal = new Calc();(建構式也將在后面詳細講解)Calc cal;為參考,cal = new Calc();為創建新的object,也可以直接寫成Calc cal = new Calc();

創建好新的物件之后,我們就可以參考Calc類中的變數:cal.num1, cal.num2, cal.result 以及方法:cal.Perform();如果我們宣告cal.num1=3;cal.num2=5;那么經過cal.Perform()方法之后,cal.result = cal.num1+cal.num2 = 8,再經過
System.out.println輸出cal.result,在控制臺console得到結果8,

相信你們已經大致了解了如何參考類并創造一個新的物件,并參考類中的變數和方法進行計算,不過我們還剩有兩個未解釋清楚的問題:主方法main()和建構式constructor,我們將一一進行解釋,
public static void main(String args[]){}是初學者包括我都很不解的一個函式形式,實際上,Java運行時首先會執行main()方法,就和c語言一樣,而main方法是由Java虛擬機呼叫的,所以必須是public,虛擬機呼叫的main()方法的時候,不需要產生任何物件,所以main()方法宣告為static,且不需要回傳值,所以必須宣告為void,String[] args是main函式的形式引數,可以用來獲取命令列用戶輸入進去的引數,
接下來我們解釋建構式constructor,我們在主方法中的物件 cal 就是由Calc()建構式創建的,實際上,無需我們進行定義,每一個類會自動生成與類同名的建構式(方法),一個類中能有多個建構式,它們沒有函式型別,不回傳任何值,且默認類中定義的變數為0,因此,如果我們不在主方法中宣告cal.num1=3;cal.num2=5,那么輸出結果將會是0,如下圖:

當然,我們還可以自行定義建構式以改變變數的默認值,甚至是函式的引數,
如下圖所示,我們取消了宣告cal.num1=3;cal.num2=5,而是在建構式Calc()中直接將3,5分別賦值給num1, num2,在另外一個建構式Calc(int number1,int number2)中將number1,number2分別賦值給num1, num2,而在主函式中,物件cal2的建構式中的3,4將分別賦值給number1,number2,分別輸出cal1.result和cal2.result,得到的結果大家肯定也知道了,

好了這就是這次博客的全部內容,謝謝你們能夠看完,更詳細的關于main()函式的解釋可以看https://www.cnblogs.com/wannianma/archive/2011/04/03/wannianma.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/541798.html
標籤:Java
