Javaの基礎を取り戻す(9):抽象クラスとインターフェースのまとめ
1. 最後のキーワード
は、クラス、プロパティ、メソッドを変更できます
2. 変更されたクラス:finalクラス最終クラス Pet{}
3. 変更された属性: 属性の値は変更できません。最終的に変更された属性には手動で割り当てる必要があります PI
4. 変更されたメソッド: このメソッドはオーバーライドできません 5. 最終クラスのすべてのメソッドはデフォルトです最終回へ
2. 抽象クラス
Pet Dog Cat には実質的な意味はありません
2. 親クラスはコードテンプレートとしてのみ機能します
3. 抽象、抽象、キーワード
4. 変更されたクラス抽象class Pet{ // Abstract class }
5. 抽象クラスはインスタンス化できません。 Instance == object オブジェクトを作成するプロセスはインスタンス化と呼ばれます
6. クラスが抽象クラスになった後、それは何かに影響しますか?クラスのメンバーは? a. 属性 変更なし b. 構築メソッド 変更なし c. 通常の関数メソッド 変更なし 7. 将来的には、すべての親クラスを抽象クラスに変更することをお勧めします
3抽象メソッド
メソッドは変更可能であり、親クラスの関数メソッドは通常、抽象メソッドに変更できます
2. 特徴 a. 抽象メソッドは抽象クラス内に存在する必要があります。抽象メソッドは書き換える必要があります
3. 抽象クラスは通常のメソッドと抽象メソッドの両方を持つことができます
4. 親クラスの関数メソッドを抽象メソッドに変更することをお勧めします
5. 抽象キーワードで抽象化できるキーワードと共存しないの?
final: メソッドが抽象化されている場合は書き直す必要がありますが、final は書き換えることができないため、競合が発生します。
private: メソッドがプライベートであり、サブクラスがそれを継承できない場合、それを書き換える方法は?
static: オブジェクトは必要ありません。抽象メソッドはクラス名を通じて呼び出すことができ、抽象メソッドの呼び出しは無意味です
4. インターフェイスの予備理解
実際の生活では、インターフェイスとは何でしょうか?水道管インターフェース ソケット USB インターフェース
2. 機能は似ており、「インターフェース」と呼ばれます
3. 機能 a. 拡張性と保守性を確保するために、インターフェースは多態性 (USB インターフェース) の形式です。実用的なアプリケーション: 統一された規格と仕様 (USB インターフェース)
4. Java におけるインターフェースとは何ですか?インターフェースの本質は、より特殊な抽象クラスです
5. インターフェースを定義します:interface = abstract class
6. インターフェースを継承するクラスはサブクラスとは呼ばれず、実装クラスと呼ばれます。実装
7. インターフェイスと抽象クラスと比較して、より特殊な場所:
a. インターフェイスはインスタンス化できず、コンストラクターを持つこともできません
b. そうでない場合、インターフェイス内のすべてのプロパティは public static Final によって変更されます。 c. インターフェース内 すべてのメソッドは抽象メソッドである必要があり、パブリック抽象キーワードが自動的に追加されます
d. インターフェースは複数の継承を持つことができます
e.
f. インターフェースはオブジェクトクラスを継承しません5. インターフェースはポリモーフィズムの一種です 機能: プログラムの拡張性と保守性を確保します2. インターフェースの上方変換オブジェクト名 = new 実装クラス ();
a. 受動的パーティが属性を使用する必要がある場合は、継承ポリモーフィズムのみを使用できます。ケース: 異なる暗号化アルゴリズムの変更 (A 社はデータを暗号化する必要があり、当初は B 社が提供したアルゴリズムを使用していました。その後、アルゴリズムは簡単にクラックされ、その後、C社の暗号化アルゴリズムに置き換えられました
インターフェースとは、関係者全員のメソッドの命名を統一するために使用される標準または仕様です