在Java中,類別是一個使用者自定義的資料型態,用於表示某種概念、實體或物件,必須先設計規
劃物件未來的特徵與功能,依性質可分為靜態描述與動態行為,本身不佔用記憶體空間,也不能執行任何操作。可以包含三種最常見的成員:物件的屬性(成員變數)、行為(方法)和建構子。讓我們以一個簡單的例子來看看如何定義一個類別:
public class Person {
// 變數
String name;
int age;
// 建構子
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// 方法
public void say() {
System.out.println("Hello, my name is " + name + " and I am " + age + " years old.");
}
}
用於描述物件的狀態或特徵
宣告語法:
[存取權限] [修飾詞] 資料類型 變數名稱 [= 初始值] ;
priavte String name;
int age;
public class FieldDemo{
String name = “JAVA”;//直接定義在class下 者,為成員變數,效力 範圍為全域。
static int i = 100;//加 static,為類別 變數,存放在獨立 的記憶體中
static void total(){
int j = 150;//定義在方法裡,為區域 變數,效力僅在該方法 中。main 方法中的args也是
System.out.print(i+j);
}
public static void main(String[] args){
FieldDemo.total();
}
}
常數:
又稱行為、函式,用於描述物件的行為或操作,不能獨立存在,必須屬於類別或物件
[存取權限] [修飾詞] 返回類型 變數名稱 ( [參數列] ) {
程式區塊;
}
public void say() {
System.out.println("Hello, my name is " + name + " and I am " + age + " years old.");
}
注意:方法定義好之後並不會立即執行,必須等到被呼叫才會執行。
public class FunctinDemo{
//定義方法
static void total(){
int j = 150;
System.out.print(i+j);
}
}
public static void main(String[] args){
//呼叫方法
FunctinDemo.total();
}
建立類別的物件,初始化物件屬性。
[存取權限] 類別名稱 ([參數列]) {
程式區塊;
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
建構子名稱 : 必須和類別名稱相同
沒有定義建構方法,JVM會主動補上一個無參數、無執行內容的建構方法,又
叫 “預設建構方法(Default Constructor)”。
不能定義返回類型或void ,若定義就會當成方法就不是建構子
用new 關鍵字來呼叫建構子時,回傳該類別的實例 可以當作返回值,所以不需要定義返回值類型,不需要return
類別有以下作用:
物件是類別的一個具體實例。它是類別的一個實體,具有類別定義的屬性和行為。物件是在執行時建立的,佔用記憶體,並可以通過引用來訪問和操作。
建立物件最根本的途徑是建構子,用new 關鍵字來呼叫建構子即可建立這個類別的實例,所以類別如果沒有建構子,就無法建立實例,Java提供了一個功能 :如果沒有編寫建構子,就會提供預設的建構子以下是如何創建和使用一個**Person
**物件:
類別名稱 物件(變數)名稱 = new 類別名稱();
(宣告一個物件變數) (記憶體中配置物件的位置)
class Person {
// 變數
String name;
int age;
// 建構子
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// 方法
public void say() {
System.out.println("Hello, my name is " + name + " and I am " + age
+ " years old.");
}
}
public class ObjectDemo {
public static void main(String[] args) {
// 創建兩個不同的Person物件實例
Person person1 = new Person("Alice", 30);
Person person2 = new Person("Bob", 25);
// 調用物件的方法
person1.say();
person2.say();
}
}
物件變數名稱 . 屬性 : 操作物件屬性
物件變數名稱 . 方法( ) : 執行物件方法
在記憶體的配置:
那今天就到這囉~