ホームページ  >  記事  >  オブジェクト指向の特徴は何ですか

オブジェクト指向の特徴は何ですか

青灯夜游
青灯夜游オリジナル
2019-06-03 14:45:23182820ブラウズ

オブジェクト指向の特徴は、 1. 現実世界に存在するある種のものを抽出してプログラムコードで表現する「抽象化」 2. プロセスやデータを囲む「カプセル化」データには、定義されたインターフェイスを通じてのみアクセスできます。3. クラスを接続する階層モデル「継承」、4. 異なるタイプのオブジェクトが同じメッセージに応答できるようにする「ポリモーフィズム」。

オブジェクト指向の特徴は何ですか

このチュートリアルの動作環境: Windows 7 システム、Dell G3 コンピューター。

#オブジェクト指向は、現実世界を理解し抽象化する手法であり、コンピュータプログラミング技術が一定段階まで発展した成果であり、ソフトウェア開発手法です

オブジェクト指向には主に 4 つの大きな特徴があります

1. 抽象化

トピックと現在の目標の違い 目標とは関係のないことに焦点を当て、現在の目標に関連する側面に焦点を当てます。 (現実世界に存在するある種のものを抽出してプログラムコードで表現することを指します。抽象化されたものを一般にクラスやインターフェースと呼びます)。抽象化は問題全体を理解することを目的とするのではなく、問題の一部を選択し、当面はいくつかの詳細を省略することを目的としています。抽象化には 2 つの側面があり、1 つはデータの抽象化、もう 1 つはプロセスの抽象化です。

データの抽象化 -->世界の種類の物の特性を表すのが、オブジェクトのプロパティです。たとえば、鳥には翼や羽毛などがあります (クラス属性)

手続き型抽象化 --> 世界の種類の物の動作を表すのは、オブジェクトの動作です。たとえば、鳥は飛んだり歌ったりすることができます (クラスメソッド)

2. カプセル化

カプセル化はオブジェクト指向の特徴の 1 つであり、オブジェクト指向の主な機能です。クラスの概念。カプセル化はプロセスとデータを囲むことであり、データへのアクセスは定義されたインターフェイスを介してのみ可能です。たとえば、プライベート変数は、set メソッドと get メソッドを使用して取得できます。

カプセル化によりモジュールの独立性が向上し、プログラムの保守と変更が容易になります。アプリケーションへの変更はクラスの内部に限定されるため、アプリケーションの変更による影響は最小限に抑えられます。

3. 継承

クラスを接続し、クラスの再利用を許可および促進し、共通点を明確に表現する方法を提供する階層モデル。オブジェクトの新しいクラスは既存のクラスから派生できます。これはクラス継承と呼ばれるプロセスです。新規クラスは元のクラスの性質を引き継いでおり、新規クラスを元のクラスの派生クラス(サブクラス)、元のクラスを新規クラスの基底クラス(親クラス)と呼びます。派生クラスは親クラスからメソッドとインスタンス変数を継承でき、クラスは特別なニーズにより適したものにするために新しいメソッドを変更または追加できます。したがって、継承とは親クラスのコードを再利用してポリモーフィズムに備えることだと言えます。

4. ポリモーフィズム

ポリモーフィズムとは、異なるタイプのオブジェクトが同じメッセージに応答できるようにすることを指します。ポリモーフィズムには、パラメーター化されたポリモーフィズムとコンテインメント ポリモーフィズムが含まれます。ポリモーフィック言語には、柔軟性/抽象化/動作共有/コード共有という利点があり、同じ名前を持つアプリケーション関数の問題をうまく解決できます。一般に、メソッドのオーバーライド、オーバーロード、および動的リンクはポリモーフィズムを構成します。 Java がポリモーフィズムの概念を導入した理由の 1 つは、クラスの単一継承によって生じる機能上の欠陥を補うことです。

ダイナミック リンク --> 親クラスで定義されたメソッドの場合、そのメソッドがサブクラスでオーバーライドされると、親クラスの型の参照によってサブクラスのメソッドが呼び出されます。これがダイナミック リンクです。

オブジェクト指向プログラミングには多くの利点があります:

1. 開発期間が短く、効率が高く、信頼性が高く、開発されたプログラムはより優れたものになります。強い。オブジェクト指向プログラミングの再利用性により、成熟したクラス ライブラリをアプリケーションで広く使用できるため、開発時間が短縮されます。

2. アプリケーションの保守、更新、アップグレードが容易になります。継承とカプセル化により、アプリケーションの変更の影響がより局所的になります。

(コンピューター プログラミングに関する基本的な知識が必要な場合は、

プログラミング学習 チャンネルを参照してください)

以上がオブジェクト指向の特徴は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。