2011-10-05 24 views
7

:は、C#のクラス定義またはインターフェイス定義で:と何を示していますか?このC#コードでこのコロンは何を意味していますか?

public interface IServer : IServerManager, ISimulation, ISiteEx 
{ 
    /// <summary> 
    /// Returns the highest game version that supported by this server. 
    /// Higher versions aren't guaranteed to work perfect. 
    /// </summary> 
    Version MaxSupportedGameVersion { get; } 

    /// <summary> 
    /// Gets/sets the current server configuration. 
    /// </summary> 
    ServerConfiguration Configuration { get; set; } 
} 
+0

今後、件名の代わりに質問の本文に質問を説明する1つまたは2つの質問を記載してください。 –

答えて

7

:右側インターフェイス(技術的には、インターフェースを実装するクラスの実装を与える)演算子の左側のインターフェースが実装されていることを示すために使用されます。

:は、クラスが1つまたは複数のインターフェイスも同様に実装していることを示すために同じ方法で使用されます。

4

これは、インターフェイスが別のインターフェイスまたは複数のインターフェイスを実装していることを意味します。

IServer
5

インターフェイスであるため、結腸はIServerインターフェースはIServerManagerISimulationISiteExインターフェイスから継承することを意味します。つまり、IServerを実装するクラスまたは構造体は、他の3つを実装する必要があります。

コロンの左側の型がクラスまたは構造体の場合、コロンはそのクラスまたは構造体がそのインタフェースを実装していることを示します。この場合も、右側の型のうちの1つ(そして唯一の型)がクラスであれば、左側の型はこのクラスから継承されることを意味します。クラスは多くのインタフェースを継承することができますが、1つのクラスから継承できます。

3

:これはCで継承を実装する方法です# これを使用できるシナリオは複数あります。

  1. 別のインタフェースを拡張インタフェース(これはあなたの質問の例の場合である。)

  2. クラスインターフェイス別のクラス

を拡張

  • クラスを実装

    クラスは複数のインターフェイスを実装できますが、1つのクラスだけを拡張できます。

  • 関連する問題