C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のインターフェイス内でアクセス修飾子を指定できないのはなぜですか?


インターフェースメソッドは、このインターフェースを実装するクラスが特定の一連のことを実行することを指定する外部との契約です。

インターフェイスの目的は他のタイプがクラスまたは構造体にアクセスできるようにすることであるため、インターフェイスメンバーは常にパブリックです。

インターフェイスには、保護されたものや内部的なものなどのアクセス指定子を含めることができます。したがって、「外界」を「外界全体」のサブセットに制限します。

interface IInterface{
   void Save();
}
class Program{
   static void Main(){
      Console.ReadLine();
   }
}

上記の例は、エラーなしで正しくコンパイルされます

C#8より前は、インターフェイスメンバーはデフォルトでパブリックでした。実際、インターフェイスメンバー(パブリックを含む)にアクセス修飾子を設定すると、コンパイラエラーが発生します。

interface IInterface{
   Public void Save();
}
class Program{
   static void Main(){
      Console.ReadLine();
   }
}

上記のコードは、c#7.0ではコンパイル時エラーをスローしますが、c#8.0ではエラーなしでコンパイルします


  1. パスワード保護が時代遅れのセキュリティ対策である理由

    パスワードの面白いところは、難しいほど忘れやすいということです。そして、覚えやすいほど、他の人が推測しやすくなります。実際、このパスワードの欠陥は非常に気が遠くなるようなものであり、M. ナイト シャマランでさえこの問題についての映画を作ることはありません. 私たちは彼に新しいアイデアを与えようとしているわけではありませんが、オンラインの詳細情報やアカウントが犯罪行為にさらされるのを防ぐ上で、パスワード保護は非効率的であることが何度も証明されています.これは、過去数年間、ワールド ワイド ウェブを悩ませてきた巨大なデータ侵害で明確に証明されています。データ侵害とサイバー乗っ取りは新しい概念

  2. Android 10 にアップデートできませんか?理由は次のとおりです

    ここで解決策を探しているのであれば、Android 10 の更新に失敗したことは確かです。今月初めに Android の最新バージョンがリリースされたため、かなり話題になっています。これには、最新の Android バージョンのゲームチェンジャーとなるいくつかの新機能の開始などの理由があります。最新バージョンを取得しようとしているので、Android 10 に更新できない基本的な理由について話しましょう。 あなたは Google Pixel ユーザーではないため、Android 10 のアップデートを表示できません。はい、このバージョンは現在、最新バージョンの Android を入手できる