Java 中的物件指的是什麼?


簡介

在現實生活中,我們可以稱桌子、椅子、燈等為物件,因為它們具有一些屬性和功能。我們可以說,任何具有屬性或特性以及某些功能的東西,例如燈具有底座和燈泡,並且可以照亮房間,因此它是一個物件。在 Java 中,我們也有物件,它們也擁有自己的屬性。物件基本上是類的例項,而類提供了建立物件的藍圖。讓我們簡要討論一下物件以及如何在 Java 中建立物件。

定義

要掌握面向物件技術,您必須熟悉物件。面向物件程式設計旨在建立功能類似於現實世界的程式設計。它還強調資料是如何關聯的。有幾個 OOP 原則,物件就是其中之一。物件是一個獨立的實體,具有其自身獨特的特徵和行為。類是物件的藍圖。因此,類的例項就是物件。在本部分中,我們將討論 Java 物件定義語法。物件共享的特徵如下:

  • 標識 - 標識是用於唯一識別該專案的特徵,例如隨機 ID 號或記憶體位置。簡單的物件,如燈,可能只有兩種狀態(開和關)和兩種動作(開啟,關閉),但它們仍然具有標識(例如,專案的製造商 ID)。任何外部使用者都無法看到 ID 的實際值。它是 JVM 用於在內部跟蹤物件的機制。

  • 狀態 - 變數儲存物件的狀態(欄位)。

  • 行為 - 方法說明物件的行為。

如何在 Java 中建立物件?

建立物件有以下步驟:

  • 宣告

  • 例項化物件

  • 初始化物件

建立物件的語法

宣告

宣告主要定義物件的資料型別。宣告告知編譯器您希望使用給定的名稱來引用指定型別的一個變數。宣告的物件不會被例項化。使用 new 運算子建立 Date 物件或任何其他物件。

Class_name Object_name;

物件的型別始終是類的名稱。

例項化

透過 new 運算子為新生成的分配記憶體。new 需要一個引數,該引數包含物件的構造方法。構造方法負責初始化新物件。換句話說,例項化是建立類例項/物件的流程。它佔用物件的初始記憶體並返回引用。物件的例項化充當 Java 中類的藍圖。例項化有兩種方法:

  • 使用 new 關鍵字 - 為了例項化類,Java 提供了 new 關鍵字。讓我們看看如何使用 new 關鍵字來例項化類。

//declaring an object
Dog Mydog;
//Instantiating using new keyword
Mydog=new Dog();

這裡 Dog() 是類的構造方法,是一個無引數構造方法,即沒有引數。但是,如果構造方法是有引數的,那麼我們也必須初始化引數,例如:

Mydog=new Dog(2,Bruno);

讓我們看一個例子來更好地理解。

示例

public class Dog{
   int age;
   String name;
   Dog(int a, String n)//parameterized constructor
   {
      age=a;
      name=n;
   }
   public void display(){
      System.out.println(age);
      System.out.println(name);
   } 
   public static void main(String args[]){
      Dog mydog=new Dog(12, "Bruno");//Object instantiation and object declaration
      mydog.display();//object initialization
   }
}

輸出

12
Bruno
  • 使用靜態工廠方法 - 類也可以透過執行靜態工廠函式來例項化。類可以提供一個公共靜態工廠方法,它只是一個返回類例項的靜態方法。請始終記住,它與工廠方法模式不同。

讓我們看一個靜態工廠方法的示例

示例

public class Dog{
   int age;
   String name;
   Dog(int age, String name)//parameterized constructor
   {
      this.age=age;
      this.name=name;
   }
   public static Dog mydog(int age, String name)
   {
      return new Dog(age,name);
   } 
   public static void main(String args[])
   {
      Dog d=new Dog(23,"bruno");
      System.out.println(d.age+" "+d.name);
   }
}

輸出

23 bruno

初始化

類包含構造方法以初始化新建立的該型別例項。構造方法可以透過類宣告中的其他方法識別出來,因為它們與類具有相同的名稱並且沒有返回型別。

初始化物件主要有四種方法:

  • 樸素方法 - 這個概念是使用 new 運算子獲取類的例項,並使用類 setter 設定其值。

  • 構造方法 - 使用 new 運算子建立物件時,必須指定構造方法。構造方法的名稱與類相同,並且不返回任何內容。它可以接受一組引數,這些引數是我們想要設定值的欄位,或者它可以是無引數的(無引數構造方法)。如果我們宣告一個沒有構造方法的類,編譯器將自動生成一個。

  • 複製構造方法 - 複製構造方法是一個特殊的構造方法,它從現有物件建立一個新物件。它只接受一個引數,即同一類的另一個例項。使用 this() 表示式,我們可以直接從複製構造方法執行另一個構造方法。

  • 匿名內部類 - 使用“雙括號初始化”作為初始化物件的替代方法。這會在未命名的內部類中生成一個單一的例項初始化器。強烈建議不要使用此技術。

結論

在本文中,我們學習了物件的概念以及如何建立物件。物件是面向物件程式語言的基本構建塊。在開始使用 Java 之前,您必須熟悉物件的概念。類是物件的藍圖,因此我們可以說物件是類的例項。

更新於:2023-08-23

122 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告