第8月15日には違いは何タイトル抽象クラスとインタフェースの増加となりました

抽象クラスとインタフェースの違いは何ですか

 
パラメータ 抽象クラス インターフェース
デフォルトのメソッドの実装 それは達成するためのデフォルトの方法を持つことができます インターフェイスは完全に抽象的です。これは単に実現を存在しません。
実現 サブクラスは、抽象クラスを継承するキーワードを拡張します。サブクラスは事の抽象一種ではない場合、それはすべての宣言のための抽象クラスの実装方法を提供する必要があります。 キーワード道具を使用して、インターフェイスを実装するためのサブクラス。これは、すべての明記方法を達成するために必要なインタフェースを提供します
コンストラクタ 抽象クラスは、コンストラクタを持つことができます インタフェースのコンストラクタを持っていません
そして、通常のJavaクラスとの違い あなたは、通常のJavaクラスの外抽象クラスをインスタンス化することはできません、それはどんな違いを確認しないことを除いて インターフェイスは完全に異なるタイプです
アクセス修飾子 抽象メソッドは、パブリック、保護を持っており、これらの修飾子をデフォルトすることができます デフォルトのインターフェイスメソッド修飾子はpublicです。あなたは、他の修飾子を使用することはできません。
mainメソッド 抽象メソッドは、mainメソッドを持つことができ、我々はそれを実行することができます インターフェースは、メインメソッドではありません、我々はそれを実行することはできません。
多重継承 抽象メソッドは、クラスを継承し、複数のインターフェイスを実装することができ インタフェースは、1つまたは複数の他のインターフェイスを継承することができます
スピード これは、インターフェイスの速度よりも速いです それはクラスの実装で方法を見つけるには時間がかかるため、インターフェイスは、少し遅いです。
新しいメソッドを追加します。 あなたは抽象クラスに新しいメソッドを追加した場合、あなたはそれのデフォルトの実装を提供することができます。だから今、あなたはあなたのコードを変更する必要はありません。 あなたは、インターフェイスにメソッドを追加する場合は、インターフェイスを実装するクラスを変更する必要があります。
パラメータ 抽象クラス インターフェース
デフォルトのメソッドの実装 それは達成するためのデフォルトの方法を持つことができます インターフェイスは完全に抽象的です。これは単に実現を存在しません。
実現 サブクラスは、抽象クラスを継承するキーワードを拡張します。サブクラスは事の抽象一種ではない場合、それはすべての宣言のための抽象クラスの実装方法を提供する必要があります。 キーワード道具を使用して、インターフェイスを実装するためのサブクラス。これは、すべての明記方法を達成するために必要なインタフェースを提供します
コンストラクタ 抽象クラスは、コンストラクタを持つことができます インタフェースのコンストラクタを持っていません
そして、通常のJavaクラスとの違い あなたは、通常のJavaクラスの外抽象クラスをインスタンス化することはできません、それはどんな違いを確認しないことを除いて インターフェイスは完全に異なるタイプです
アクセス修飾子 抽象メソッドは、パブリック、保護を持っており、これらの修飾子をデフォルトすることができます デフォルトのインターフェイスメソッド修飾子はpublicです。あなたは、他の修飾子を使用することはできません。
mainメソッド 抽象メソッドは、mainメソッドを持つことができ、我々はそれを実行することができます インターフェースは、メインメソッドではありません、我々はそれを実行することはできません。
多重継承 抽象メソッドは、クラスを継承し、複数のインターフェイスを実装することができ インタフェースは、1つまたは複数の他のインターフェイスを継承することができます
スピード これは、インターフェイスの速度よりも速いです それはクラスの実装で方法を見つけるには時間がかかるため、インターフェイスは、少し遅いです。
新しいメソッドを追加します。 あなたは抽象クラスに新しいメソッドを追加した場合、あなたはそれのデフォルトの実装を提供することができます。だから今、あなたはあなたのコードを変更する必要はありません。 あなたは、インターフェイスにメソッドを追加する場合は、インターフェイスを実装するクラスを変更する必要があります。

おすすめ

転載: www.cnblogs.com/whymoney1000/p/11357507.html