Javaの改善(8) ----- 多重継承の実装
多重継承とは、クラスが同時に複数の親クラスから動作と特性を継承できることを意味します。ただし、Java ではデータのセキュリティを確保するために単一の継承のみが許可されることがわかっています。システムで多重継承が必要な場合、それは設計が悪いのではないかと考えることがあります。その際に考えなければならないのは、多重継承の使用方法ではなく、設計に問題があるかどうかということです。多重継承を実装する必要があります。継承などの状況は現実に存在します。私たちは父親の行動と特性と母親の行動と特性の両方を継承します。幸いなことに、Java は非常に親切で、私たちを理解してくれます。インターフェースと内部クラスという 2 つの方法で多重継承を実現できます。
1. インターフェース
インターフェースと抽象クラスを導入するとき、サブクラスは親クラスを 1 つだけ継承できることを学びました。つまり、継承は 1 つだけですが、複数のインターフェースを実装できるということです。多重継承の実装により道が開かれました。
インターフェースの場合、単なるより純粋な抽象クラス以上のものを表す場合があります。インターフェースには特定の実装がありません。つまり、インターフェースに関連するストレージがないため、複数のインターフェースの組み合わせを防ぐ方法はありません。 。
interface CanFight { void fight(); } interface CanSwim { void swim(); } interface CanFly { void fly(); } public class ActionCharacter { public void fight(){ } } public class Hero extends ActionCharacter implements CanFight,CanFly,CanSwim{ public void fly() { } public void swim() { } /** * 对于fight()方法,继承父类的,所以不需要显示声明 */ }
2. 内部クラス
多重継承を実装するための上記のインターフェイスの使用は、より実現可能で一般的な方法です。内部クラスを導入するときに、内部クラスによって多重継承の実装がより完璧になると述べましたが、それも同様です。親クラスが抽象クラスまたは具象クラスの場合、内部クラスを介してのみ多重継承を実装できます。内部クラスを使用して多重継承を実装する方法については、次の例を参照してください。息子が多重継承を使用して父親と母親の優れた遺伝子を継承する方法。 derth父親よりも強くなるために。ここでは 2 つの内部クラスが定義されており、それぞれ父クラスと母クラスを継承しており、どちらもそれぞれの親クラスの動作を非常に自然に取得できます。これは内部クラスの重要な機能です。内部クラスは、内部クラスから 1 つを継承できます。無関係なクラスは内部クラスの独立性を保証します。これに基づいて多重継承が可能になります。
上記は Java 改善の章 (8) -----多重継承の実装です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。
ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。
