當前位置:才華齋>計算機>java語言>

關於Java類的定義以及執行順序學習教程

java語言 閱讀(2.3W)

類必須先定義才能使用。類是建立物件的模板,建立物件也叫類的例項化。

關於Java類的定義以及執行順序學習教程

下面通過一個簡單的例子來理解Java中類的定義:

public class Dog{ String name; int age; void bark(){ // 汪汪叫 tln("汪汪,不要過來"); } void hungry(){ // 飢餓 tln("主人,我餓了"); }}

對示例的說明:

public 是類的修飾符,表明該類是公共類,可以被其他類訪問。修飾符將在下節講解。class 是定義類的關鍵字。Dog 是類名稱。name、age 是類的成員變數,也叫屬性;bark()、hungry() 是類中的函式,也叫方法。

一個類可以包含以下型別變數:

區域性變數:在方法或者語句塊中定義的變數被稱為區域性變數。變數宣告和初始化都是在方法中,方法結束後,變數就會自動銷燬。 成員變數:成員變數是定義在類中、方法體之外的變數。這種變數在建立物件的時候例項化(分配記憶體)。成員變數可以被類中的方法和特定類的語句訪問。 類變數:類變數也宣告在類中,方法體之外,但必須宣告為static型別。static 也是修飾符的一種,將在下節講解。

構造方法

在類例項化的過程中自動執行的方法叫做構造方法,它不需要你手動呼叫。構造方法可以在類例項化的過程中做一些初始化的.工作。

構造方法的名稱必須與類的名稱相同,並且沒有返回值。

每個類都有構造方法。如果沒有顯式地為類定義構造方法,Java編譯器將會為該類提供一個預設的構造方法。

下面是一個構造方法示例:

public class Dog{ String name; int age; // 構造方法,沒有返回值 Dog(String name1, int age1){ name = name1; age = age1; tln("感謝主人領養了我"); } // 普通方法,必須有返回值 void bark(){ tln("汪汪,不要過來"); } void hungry(){ tln("主人,我餓了"); } public static void main(String arg[]){ // 建立物件時傳遞的引數要與構造方法引數列表對應 Dog myDog = new Dog("花花", 3); }}

執行結果:

感謝主人領養了我

說明:

構造方法不能被顯示呼叫。 構造方法不能有返回值,因為沒有變數來接收返回值。

建立物件

物件是類的一個例項,建立物件的過程也叫類的例項化。物件是以類為模板來建立的。

在Java中,使用new關鍵字來建立物件,一般有以下三個步驟:

宣告:宣告一個物件,包括物件名稱和物件型別。

例項化:使用關鍵字new來建立一個物件。

初始化:使用new建立物件時,會呼叫構造方法初始化物件。

例如:

Dog myDog; // 宣告一個物件myDog = new Dog("花花", 3); // 例項化

也可以在宣告的同時進行初始化:

Dog myDog = new Dog("花花", 3);

訪問成員變數和方法

通過已建立的物件來訪問成員變數和成員方法,例如:

// 例項化Dog myDog = new Dog("花花", 3);// 通過點號訪問成員變數;// 通過點號訪問成員方法();

下面的例子演示瞭如何訪問成員變數和方法:

public class Dog{ String name; int age; Dog(String name1, int age1){ name = name1; age = age1; tln("感謝主人領養了我"); } void bark(){ tln("汪汪,不要過來"); } void hungry(){ tln("主人,我餓了"); } public static void main(String arg[]){ Dog myDog = new Dog("花花", 3); // 訪問成員變數 String name = ; int age = ; tln("我是一隻小狗,我名字叫" + name + ",我" + age + "歲了"); // 訪問方法 (); ry(); }}

執行結果:

感謝主人領養了我我是一隻小狗,我名字叫花花,我3歲了汪汪,不要過來主人,我餓了

Java類的基本執行順序

我們以下面的類來說明一個基本的 Java 類的執行順序:

public class Demo{ private String name; private int age; public Demo(){ name = "微學苑"; age = 3; } public static void main(String[] args){ Demo obj = new Demo(); tln( + "的年齡是" + ); }}

基本執行順序是:

先執行到第 9 行,這是程式的入口。 然後執行到第 10 行,這裡要 new 一個Demo,就要呼叫 Demo 的構造方法。 就執行到第 5 行,注意:可能很多人覺得接下來就應該執行第 6 行了,錯!初始化一個類,必須先初始化它的屬性。 因此執行到第 2 行,然後是第 3 行。 屬性初始化完過後,才回到構造方法,執行裡面的程式碼,也就是第 6 行、第 7 行。 然後是第8行,表示 new 一個Demo例項完成。 然後回到 main 方法中執行第 11 行。 然後是第 12 行,main方法執行完畢。

作為程式設計師,應該清楚程式的基本執行過程,否則糊里糊塗的,不利於編寫程式碼,也不利於技術上的發展。