インターフェースとインターフェースの関係
継承
多重継承と、複数の層が継承することができ
注意:
複数の場合は1 親インタフェースが同じ名前がある抽象メソッドを、その後、サブインターフェイスは、一度だけ実現する必要があります
2.複数の場合は、親インタフェースが同じ名前を持つデフォルトの方法は、サブインターフェイスは、デフォルトのメソッドをオーバーライドする必要があり、複数の場合は、我々はデフォルトのキーワード3を追加する必要があり、親インターフェイスが同じ名前を持つ静的メソッド、そして無視し、静的メソッドので、インタフェース用のみ
前記複数の場合は親インターフェイスが同じ名前有するプライベートメソッドを、この方法が唯一のプライベート・インタフェースができるので、これを無視、
インタフェースとクラス間の関係
実現関係
シングル実装:クラスが1つのインタフェースのみを実装
マルチ実装:クラスは、同時に複数のインタフェースを実装することができ
フォーマット:
パブリック クラスのクラスの名前は、実装インタフェース名1、2インタフェース名、{... }
注意:
1.複数の場合インターフェイスに同じ名前の抽象メソッドは、その後、実装クラスはのみ達成する必要があります
複数の場合2. インタフェースが同じ名前を持つデフォルトの方法、実装クラスは一度書き換える必要があり、あなたが削除したいデフォルトのキーワードを
3.複数の場合インターフェイスが同じ名前を持つ静的メソッドは、実装クラス無視インターフェース静的メソッドを直接使用インタフェースのためのものです
前記複数の場合インターフェイスで同じ名前のプライベートメソッドは、実装クラスがインターフェイスプライベートメソッドは、本インタフェースのみを使用することができるので、無視
デフォルトのメソッドサブインターフェイスの親インターフェイスをオーバーライドするには、defaultキーワードを追加する必要があります
デフォルトの実装クラスのインターフェイスメソッドをオーバーライドし、デフォルトのキーワードを削除する必要があります
クラスは、複数のインタフェースも実装することができる、いずれかの別のクラスから継承します
フォーマット:
パブリック クラスのクラス名が延びて親クラス名が実装インタフェース名1、インタフェース名2、... {
}
注意:
1.場合はインターフェース、および親クラスがあり、同じ名前のデフォルトの方法を、優先コールの親クラスのデフォルトの方法
親クラスのインタフェースと同じ名前の抽象メソッドがある場合、サブクラスは抽象メソッドをオーバーライドする必要があります2。
通常のクラス、抽象クラスとインタフェース
共通カテゴリ:メンバ変数、コンストラクタ、メソッドのメンバー、静的コードブロック
抽象クラス:メンバ変数、コンストラクタ、メンバ・メソッド、静的コードブロック、抽象メソッド--->直接オブジェクトを作成できません。
インタフェース: 定数、デフォルトメソッド、静的メソッド、プライベートメソッド、抽象メソッド--->は、直接オブジェクトを作成することはできません。
インターフェースメソッドをパラメータとして、オブジェクトはすべてのインタフェースの実装クラスを受信することができます
メソッドの戻り値としてオブジェクトのインターフェイスは、すべてのインタフェースの実装クラスを返すことができます