ビデオ: 【Javaプログラミング入門 #3】Javaプログラミングの手順(プログラミングの手順/ソースコードの作成・実行・概要/デバッグ) ※1.5倍速での再生を推奨 2024
オブジェクト指向プログラミング は、Javaなどのコンピュータプログラミングの一種です。基本的に実世界のオブジェクトや抽象的な概念のコンピュータベースのシミュレーションです。例:
-
飛行シミュレータプログラムは、実際の飛行機の動作を模倣しようとします。
-
多くのコンピュータゲームは、野球、NASCARレース、チェスなど、人間が演奏する実際のゲームのシミュレーションです。
<! - 1 - > -
ビジネスプログラムでさえ、受注、顧客サービス、出荷、請求などのビジネスプロセスのシミュレーションと考えることができます。
オブジェクト は、特定の基本特性を持つプログラミングエンティティです。
-
ID: オブジェクト指向プログラムのすべてのオブジェクトは、 同一性 を持ちます。言い換えれば、ある特定のタイプのオブジェクトのすべての出現は、同じタイプのオブジェクトの他のすべての出現と他のタイプのオブジェクトから区別することができる。 <! - 2 - > 各オブジェクトインスタンスは、コンピュータのメモリ内に独自の場所を持っています。したがって、2つのオブジェクトは、同じタイプのものであっても、それぞれ異なるメモリロケーションを持ちます。オブジェクトの開始位置のアドレスは、2つのオブジェクトがメモリ内の同じ位置を占めることができないため、オブジェクトを別のオブジェクトと区別する方法を提供します。 Javaは、各オブジェクトのアイデンティティをそれ自体にほとんど保持します。つまり、オブジェクトのメモリアドレスを取得する簡単な方法はありません。 Javaはそれがあなたのビジネスのどれでもないことを表しています。 Javaがその情報を容易に利用できるようにしたら、CやC ++のプログラマがあなたに伝えるように、さまざまな問題を引き起こす可能性があります。 <! Javaオブジェクトには
ハッシュコードと呼ばれるものがあります。はすべてのオブジェクトに対して自動的に生成されるint値であり、
はほぼオブジェクトの識別情報を表します。ほとんどの場合、オブジェクトのハッシュコードはオブジェクトのメモリアドレスに基づいていますが、必ずしもそうではありません。 Javaでは、2つの異なるオブジェクトが同じハッシュコードを持たないことを保証するものではありません。
オブジェクトで使用する場合、等価演算子(==)は実際には2つの変数または式のオブジェクトIDをテストします。それらが同じオブジェクトインスタンスを参照する場合、2つの変数または式は等しいと見なされます。タイプ: オブジェクト指向プログラミングでは、プログラム内の異なる種類のオブジェクトに名前を割り当てることができます。 Javaでは、クラスによって型が定義されます。したがって、型からオブジェクトを作成すると、そのオブジェクトはクラスによって指定された型であると言います。次の例文は、Invoice型のオブジェクトを作成します。 Invoice i = new Invoice(); この場合、このオブジェクトのアイデンティティ(つまり、メモリ内のアドレス)は変数iに割り当てられます。この変数は、インボイス型のオブジェクトへの参照を保持できることをコンパイラが認識しています。状態: 与えられたオブジェクト型の各インスタンスは同じ属性を有するが、各インスタンスは異なる状態を有する。すなわち、それぞれの属性の異なる値の組み合わせである。オブジェクトの属性の中には公開されているものもあれば、プライベートであるものもあります。プライベート属性は、オブジェクトの内部操作にとって不可欠であるかもしれないが、オブジェクトの外部に誰もそれらが存在することを知らない。彼らはあなたのプライベートな考えのようなものです。あなたの言うことや影響することに影響しますが、誰もあなたを知っているのではありません。
振る舞い:
-
オブジェクトのもう一つの特徴は、振る舞いがあるということです。状態と同様に、オブジェクトの特定の動作はそのタイプによって異なります。ただし、状態とは異なり、動作はタイプの各インスタンスごとに異なるわけではありません。 教室内のすべての生徒に、同じタイプの計算機があるとします。計算機を取り出して2つの数字を追加するように全員に依頼してください。すべての電卓は異なる番号を表示しますが、それらはすべて同じように追加されます。すなわち、それらはすべて異なる状態であるが、同じ挙動を有する。
オブジェクトが動作すると言う別の方法は、他のオブジェクトが使用できるサービスを提供するということです。すでに他のオブジェクトにサービスを提供しているオブジェクトの例はたくさんあります。たとえば、NumberFormatクラスから作成されたオブジェクトは、数値を$ 32などのきれいにフォーマットされた文字列に変換する書式設定サービスを提供します。 95.
Javaでは、オブジェクトの動作はメソッドによって提供されます。したがって、NumberFormatクラスのformatメソッドは、NumberFormatオブジェクトのフォーマット動作を提供するものです。
-