おっとっと Concepts in Java

Java の OOP 概念

オープスとは何ですか?

オブジェクト指向プログラミング システム (OOP) は、抽象化、カプセル化、継承、ポリモーフィズムの原理に基づいて機能するプログラミングの概念です。 これにより、ユーザーは必要なオブジェクトを作成し、それらのオブジェクトを処理するメソッドを作成できます。 OOP の基本概念は、オブジェクトを作成し、プログラム全体でそれらを再利用し、これらのオブジェクトを操作して結果を取得することです。

「オブジェクト指向プログラミング」を意味する OOP は、よく知られており、次のような最新のプログラミング言語で広く使用されている概念です。 Java.

おっとっと Concepts in Java 例を挙げて

以下は、OOPの一般的な概念です。 Java:

1) クラス

この class は、OOPの基本概念の1つであり、類似したエンティティのグループです。これは論理コンポーネントであり、物理的なエンティティではありません。OOPのこの1つを理解しましょう。 Concepts たとえば、「高価な車」というクラスがある場合、メルセデス、BMW、トヨタなどのオブジェクトを含めることができます。そのプロパティ (データ) は、これらの車の価格や速度などです。これらの車では、走行、後進、ブレーキなどの方法が実行される可能性があります。

2) オブジェクト

オブジェクトはクラスのインスタンスとして定義することができ、プログラム内にクラスのインスタンスが複数存在することもあります。オブジェクトは Java OOP の概念には、データと、そのデータを操作する関数の両方が含まれます。たとえば、椅子、自転車、マーカー、ペン、テーブル、車などです。

3) 継承

継承 基本の 1 つです Concepts 1 つのオブジェクトが親オブジェクトのプロパティと動作を取得する OOP のこと。 2 つのクラス間に親子関係が作成されます。あらゆるソフトウェアの編成と構造のための堅牢かつ自然なメカニズムを提供します。

4) ポリモーフィズム

ポリモーフィズム OOPの概念の1つを指します Java 変数、オブジェクト、関数が複数の形式をとることができる能力。例えば英語では、動詞 ラン と一緒に使用すると意味が異なります ノートパソコン, 徒競走, ビジネス。 ここで、次の意味が分かります。 ラン それと一緒に使用される他の単語に基づいています。 同じことがポリモーフィズムにも当てはまります。

5) 抽象化

抽象化 OOP の 1 つです Concepts in Java これは、背景の詳細​​を省いて本質的な特徴を表現する行為です。これは、特定のアプリケーションに適した新しいデータ型を作成するテクニックです。これをOOPの1つとして理解しましょう。 Concepts たとえば、車の運転中は、車の内部の動作を気にする必要はありません。ここで考慮する必要があるのは、ハンドル、ギア、アクセルなどの部品だけです。

6) カプセル化

カプセル化 最高の1つです Java OOP はデータとコードをラップする概念です。この OOP の概念では、クラスの変数は常に他のクラスから隠されています。現在のクラスのメソッドを使用してのみアクセスできます。たとえば、学校では、クラスなしでは生徒は存在できません。

7) 協会

関連とは、2 つのオブジェクト間の関係です。 OOPの一つです Concepts in Java これはオブジェクト間の多様性を定義します。この OOP コンセプトでは、すべてのオブジェクトは個別のライフサイクルを持ち、所有者は存在しません。たとえば、多くの生徒が 1 人の教師に関連付けられる一方で、1 人の生徒が複数の教師に関連付けられることもあります。

8) 集計

この手法では、すべてのオブジェクトに個別のライフサイクルがあります。ただし、所有権があるため、子オブジェクトは別の親オブジェクトに属することはできません。たとえば、クラス/オブジェクトの部門と教師を考えてみましょう。ここでは、1 人の教師が複数の部門に属することはできませんが、部門を削除しても教師オブジェクトが破棄されることはありません。

9)構成

構成は、集約の特殊な形式です。 「死」の関係とも呼ばれます。 子オブジェクトにはライフサイクルがないため、親オブジェクトが削除されると、すべての子オブジェクトも自動的に削除されます。 そのために、家と部屋の例を見てみましょう。 どの家にも複数の部屋がある場合があります。 XNUMX つの部屋が XNUMX つの異なる家の一部になることはできません。 なので、削除するとハウスルームも削除されます。

OOP (オブジェクト指向プログラミング システム) の利点:

  • おっとっと Concepts in Java プログラムにわかりやすく明確なモジュール構造を提供します。
  • オブジェクト指向プログラム用に作成されたオブジェクトは、他のプログラムで再利用できます。 したがって、開発コストを大幅に節約できます。
  • 大規模なプログラムを書くのは難しいですが、開発および設計チームが OOPS の概念に従えば、欠陥を最小限に抑えたより優れた設計が可能になります。
  • すべてのオブジェクトが独立して存在するため、プログラムのモジュール性が強化されます。

例を使用した OOPS と他のプログラミング スタイルの比較

例を使って理解してみましょう Java おっとっと Concepts 他のプログラミングアプローチとは異なります。

プログラミング言語 主に3つのタイプに分類できます

  1. 非構造化プログラミング言語: 逐次的な制御の流れを持つすべてのプログラミング言語の中で最も原始的です。 コードはプログラム全体で繰り返されます
  2. 構造化プログラミング言語: 非連続的な制御フローを持ちます。 関数を使用すると、コードを再利用できます。
  3. オブジェクト指向プログラミング言語: データとアクションを組み合わせます。

クリック こちら ビデオにアクセスできない場合

これら 3 つのタイプを例を挙げて理解しましょう。

次のような機能を備えた銀行ソフトウェアを作成したいとします。

  1. 保証金
  2. 撤退する
  3. 残高を表示

非構造化プログラミング言語

すべてのプログラミング言語の中で最も初期のものは、非構造化プログラミング言語でした。 非構造化プログラミング言語による銀行アプリケーションの非常に基本的なコードには、口座番号と口座残高の XNUMX つの変数があります。

int account_number=20;
int account_balance=100;

100ドルの入金が行われたとします。

account_balance=account_balance+100

次に、アカウント残高を表示する必要があります。

printf(“Account Number=%d,account_number)
printf(“Account Balance=%d,account_balance)

これで50ドルが引き出されます。

account_balance=account_balance-50

ここでも、アカウント残高を表示する必要があります。

printf(“Account Number=%d,account_number)
printf(“Account Balance=%d,account_balance)

非構造化プログラミング

それ以降の入金または出金操作では、同じ行を何度も繰り返してコーディングすることになります。

構造化プログラミング

構造化プログラミングの登場により、コード上の繰り返し行が関数やメソッドなどの構造に組み込まれました。 必要に応じて、関数への単純な呼び出しが行われます。

構造化プログラミング

オブジェクト指向プログラミング

私たちのプログラムでは、データを処理したり、データに対して特定の操作を実行したりしています。実際、データを持ち、そのデータに対して特定の操作を実行することは、あらゆるソフトウェアプログラムにおいて非常に基本的な特徴です。ソフトウェアプログラミングの専門家は、データと Operations. そのため、一般に OOPS と呼ばれるオブジェクト指向プログラミングが誕生しました。オブジェクト指向プログラミング言語の同じコードには、同じデータとそのデータに対して実行されるいくつかのアクションが含まれます。

Class Account{
    int account_number;
    int account_balance;
public void showdata(){
    system.out.println(“Account Number”+account_number)
    System.out.println(“Account Balance”+ account_balance)
}
}

オブジェクト指向プログラミング

データとアクションを組み合わせることで、構造プログラミングに比べて多くの利点が得られます。

  • 抽象化
  • カプセル化
  • 継承
  • ポリモーフィズム

以降のチュートリアルでさらに詳しく説明します。