ホームページ Java &#&チュートリアル Java ポリモーフィズムはどのように実装されますか?

Java ポリモーフィズムはどのように実装されますか?

Dec 03, 2019 pm 02:12 PM
java

オブジェクト指向プログラミング (OOP) では、間違いなくポリモーフィック機構が最大の特徴であり、ポリモーフィズムを利用しないプログラミングは OOP とは呼べないとさえ言えます。

Java ポリモーフィズムはどのように実装されますか?

基本的に、ポリモーフィズムには 2 つのタイプがあります。

コンパイル時ポリモーフィズム (静的ポリモーフィズムとも呼ばれます) , 実行時ポリモーフィズム (動的ポリモーフィズムとも呼ばれます) (推奨学習: java コース )

オーバーロード (オーバーロード) はコンパイル時ポリモーフィズムの一例であり、コンパイル時ポリモーフィズムはコンパイル中に発生します。これは実行時に決定され、決定されたメソッドが実行時に呼び出されます。

通常ポリモーフィズムと呼ばれるものは、実行時ポリモーフィズムを指します。つまり、コンパイル時にどの特定のメソッドを呼び出すかが不明であり、実行時まで遅延されます。これが、多態性メソッドが遅延メソッドと呼ばれることがある理由です。

以下は、実行時ポリモーフィズム (以下、ポリモーフィズムと呼びます) のメカニズムを簡単に紹介します。

ポリモーフィズムには通常 2 つの実装メソッドがあります。

サブクラスは親クラスを継承 (拡張)

クラスはインターフェイスを実装 (実装)

どのメソッドを使用する場合でも、中心となるのは、実行時にさまざまな実行効果を実現するための親クラス メソッドの書き換えまたはインターフェイス メソッドの実装です。

ポリモーフィズムを使用するには、オブジェクトを宣言するときに 1 つのルールに従う必要があります。それは、常に親クラス型またはインターフェイス型を宣言し、実際の型を作成することです。たとえば、ArrayList オブジェクトを作成すると仮定すると、宣言では次のステートメントを使用する必要があります。

List list=newArrayList();
ログイン後にコピー

ではなく

ArrayList list=newArrayList();
ログイン後にコピー

メソッド パラメーターを定義するときは、常に親クラスを最初に使用する必要があります。たとえば、型またはインターフェイス型のメソッドは、

publicvoid doSomething(List list);
ログイン後にコピー

ではなく

publicvoid doSomething(ArrayList list);
ログイン後にコピー

のように記述する必要があります。このような宣言の最大の利点は、構造の柔軟性です。 ArrayList の特性が私のニーズを満たすことができないため、LinkedList を使用して置き換えたいと考えています。その場合、 new ArrayList() をオブジェクトが作成される新しい LinkedList に変更するだけで済み、他のコードを変更する必要はありません。

以上がJava ポリモーフィズムはどのように実装されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Javaの平方根 Javaの平方根 Aug 30, 2024 pm 04:26 PM

Javaの平方根

Javaの完全数 Javaの完全数 Aug 30, 2024 pm 04:28 PM

Javaの完全数

Java の乱数ジェネレーター Java の乱数ジェネレーター Aug 30, 2024 pm 04:27 PM

Java の乱数ジェネレーター

Javaのアームストロング数 Javaのアームストロング数 Aug 30, 2024 pm 04:26 PM

Javaのアームストロング数

ジャワのウェカ ジャワのウェカ Aug 30, 2024 pm 04:28 PM

ジャワのウェカ

Javaのスミス番号 Javaのスミス番号 Aug 30, 2024 pm 04:28 PM

Javaのスミス番号

Java Springのインタビューの質問 Java Springのインタビューの質問 Aug 30, 2024 pm 04:29 PM

Java Springのインタビューの質問

Java 8 Stream Foreachから休憩または戻ってきますか? Java 8 Stream Foreachから休憩または戻ってきますか? Feb 07, 2025 pm 12:09 PM

Java 8 Stream Foreachから休憩または戻ってきますか?

See all articles