1. インターフェイス
C# でメンバーを定義します。図に示すように、フィールド n をインターフェイス ITest に追加すると、vs は赤い底を直接表示します以下に示すように、エラーは「インターフェイスにはフィールド
java を含めることはできません。コンパイルでもエラーが報告されますが、インターフェイスを含めることができないわけではありません」ただし、割り当てが欠落しているので、値を割り当ててもう一度見てみましょう。問題がないことがわかります。つまり、メンバー変数はデフォルトで public static Final です。final には値を割り当てる必要があることがわかっているため、値が割り当てられていない場合、その場所はコンパイルされます。
#割り当て後、以下に示すように問題がないことがわかりました。インターフェイス内の一部のメソッド
C# では、インターフェイス内のメソッドはサブクラスによって実装する必要があることを誰もが知っているため、インターフェイス内のメソッドを実装することはできません。実装を追加すると、エラーが発生します。エラーは、インターフェイスを定義できないことです。
#Java、つまり jdk1.8 では、実装できるメソッドがいくつか追加されました。デフォルトおよび静的で実装できます。以下の通り、コンパイルは問題ありません。では、C# にはデフォルトメソッドと静的メソッドがあるのでしょうか?インターフェースには、申し訳ありませんが何もありません。
# c# では使用できません。静的の場合、デフォルトのインターフェイス メソッドを定義できません。無効だからです。
概要:
1. Java では、インターフェイスにフィールドを含めることができますが、これらのフィールドは暗黙的に static かつ Final であるため、C# では許可されません。インターフェイス内のフィールドである場合、コンパイラはコンパイル時にエラーを表示します;
2. Java では、メソッド宣言にパブリック修飾子を含めることができます (これが必要でない場合でも) が、C# では、明示的にパブリック修飾子を含めることは違法です。インターフェイス内のメソッドの public 修飾子を指定します。 推奨チュートリアル:Java 開発の入門
以上がC#インターフェイスとJavaインターフェイスの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。