Java OOPS のクラスとオブジェクトとは何ですか? 例で学ぶ


Java のクラスとオブジェクトは、OOP の基本コンポーネントです。 多くの場合、クラスとオブジェクトが混同されます。 このチュートリアルでは、Java のクラスとオブジェクトの違いを説明しようとします。

まず、それらが何であるかを理解しましょう。

Javaのクラスとは何ですか?

CLASS 特定のタイプのオブジェクトを構築するための青写真または一連の指示です。 これは、現実の実体を中心に展開するオブジェクト指向プログラミングの基本概念です。 Java のクラスは、オブジェクトがどのように動作するか、およびオブジェクトに何が含まれるかを決定します。

Javaのクラスの構文

class <class_name>{  
    field;  
    method;  
  }

Javaのオブジェクトとは何ですか?

オブジェクト クラスのインスタンスです。 のオブジェクト おっとっと は、特定の種類のデータを活用するためのメソッドとプロパティで構成される自己完結型コンポーネントに他なりません。例えば、色の名前、テーブル、バッグ、 barkしてる。オブジェクトにメッセージを送信すると、クラスで定義されているメソッドの XNUMX つを呼び出すか実行するようにオブジェクトに要求することになります。

プログラミングの観点から見ると、OOPS のオブジェクトにはデータ構造、変数、または関数を含めることができます。 メモリ位置が割り当てられています。 Java オブジェクトはクラス階層として設計されています。

Java のオブジェクト構文

ClassName ReferenceVariable = new ClassName();

Javaのオブジェクトとクラスの違いは何ですか?

A CLASS オブジェクト指向プログラミングでは、特定の種類のすべての Java オブジェクトに共通の変数とメソッド (関数) を定義する設計図またはプロトタイプを指します。

An オブジェクト OOPS の はクラスの標本です。 ソフトウェア オブジェクトは、日常生活で見かける現実世界のオブジェクトをモデル化するためによく使用されます。

こちらをクリックすると、ツールが開きます。 ビデオにアクセスできない場合

例を使用して Java クラスとオブジェクトの概念を理解します。

ペットの育成の例を見てみましょう マネジメントシステム、特に犬用です。 犬の品種、年齢、サイズなど、犬に関するさまざまな情報が必要です。

現実の存在、つまり犬をソフトウェア エンティティにモデル化する必要があります。

Java クラスとオブジェクト

さらに、何百万ドルもかかる問題は、そのようなソフトウェアをどのように設計するかということです。

これが解決策です-

まず、演習をしてみましょう。

以下に XNUMX 種類の犬の写真をご覧ください。

Java クラスとオブジェクト

今すぐここで止めてください! それらの違いを列挙してください。

あなたが挙げた違いのいくつかは、品種、年齢、大きさ、色などかもしれません。少し考えてみると、これらの違いは、これらの犬に共通するいくつかの共通の特徴でもあります。 これらの特性 (品種、年齢、サイズ、色) は、オブジェクトのデータ メンバーを形成できます。

Java クラスとオブジェクト


次に、これらの犬の一般的な行動 (睡眠、座る、食べるなど) をリストします。つまり、これらがソフトウェア オブジェクトのアクションになります。

Java クラスとオブジェクト

これまでのところ、次のように定義しましたwing もの、

  • CLASS –犬
  • データメンバー or オブジェクト– サイズ、年齢、色、品種など。
  • メソッド– 食べて、寝て、座って、走ります。

Java クラスとオブジェクト

ここで、Java クラスのデータ メンバーの値 (犬種のサイズ、年齢、色) が異なると、異なる犬のオブジェクトが取得されます。

Java クラスとオブジェクト

この OOP アプローチを使用して、任意のプログラムを設計できます。

クラスを作成するときは、次の手順に従う必要があります。wing 原則。

  • 単一責任原則 (SRP) - クラスを変更する理由は XNUMX つだけである必要があります
  • オープンクローズド責任 (OCP) - クラスを変更せずに拡張できる必要があります
  • リスコフの代替責任 (LSR)- 派生クラスは基本クラスの代わりに使用できる必要があります
  • 依存性反転原則 (DIP) - 具体化ではなく抽象化に依存する
  • インターフェース分離原則 (ISP) - クライアント固有のきめ細かいインターフェイスを準備します。

Java サンプル プログラムのクラスとオブジェクト

// Class Declaration
public class Dog {
    // Instance Variables
    String breed;
    String size;
    int age;
    String color;

  
    // method 1
    public String getInfo() {
        return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);
    }
    

    public static void main(String[] args) {
        Dog maltese = new Dog();
        maltese.breed="Maltese";
        maltese.size="Small";
        maltese.age=2;
        maltese.color="white";
        System.out.println(maltese.getInfo());
    }
}

出力:

Breed is: Maltese Size is:Small Age is:2 color is: white

Java オブジェクトとクラスの例: main 外部クラス

前のプログラムでは、クラス内に main() メソッドを作成しています。 次に、クラスを作成し、別のクラスで main() メソッドを定義します。 これは以前の方法よりも優れた方法です。

// Class Declaration
class Dog {
    // Instance Variables
    String breed;
    String size;
    int age;
    String color;

  
    // method 1
    public String getInfo() {
        return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);
    }
}
public class Execute{
    public static void main(String[] args) {
        Dog maltese = new Dog();
        maltese.breed="Maltese";
        maltese.size="Small";
        maltese.age=2;
        maltese.color="white";
        System.out.println(maltese.getInfo());
    }
}

出力:

Breed is: Maltese Size is:Small Age is:2 color is: white

概要

  • Java クラスは、Java オブジェクトがどのように動作するか、およびオブジェクトにどのような内容が含まれるかを決定するエンティティです。
  • Java オブジェクトは、特定の種類のデータを活用するためのメソッドとプロパティで構成される自己完結型のコンポーネントです。
  • クラス システムを使用すると、プログラムは次のような手法を使用して、既存のクラス (スーパークラス) に基づいて新しいクラス (派生クラス) を定義できます。 継承、オーバーライドと拡張。