SIKI学習——C#中級教程_11インタフェースの定義と実装
1443 ワード
1.インタフェースの定義と実装
1.インタフェース定義インタフェース(飛翔機能)public interface IflyHandler{public void Fly();実装インタフェースpublic class Type 1 Enemy:IflyHandler{}は、抽象クラスを定義するのと文法的に全く同じインタフェースを定義しますが、インタフェース内の任意のメンバーの実装は許可されません.一般的に、インタフェースにはメソッド、プロパティ、インデックス、イベントの音のみが含まれます.インタフェースにはコンストラクション関数もフィールドも使用できません.インタフェースには演算子の再ロードも許可されません.インタフェース定義ではメンバーを宣言する修飾子は許可されていません.インタフェースメンバーはすべて共通です.
2.派生インタフェースインタフェースは互いに継承することができ、その方式はクラスの継承方式と同じpublic interface A{void Method 1();public interface B:A { void Method2(); }
1.インタフェース定義インタフェース(飛翔機能)public interface IflyHandler{public void Fly();実装インタフェースpublic class Type 1 Enemy:IflyHandler{}は、抽象クラスを定義するのと文法的に全く同じインタフェースを定義しますが、インタフェース内の任意のメンバーの実装は許可されません.一般的に、インタフェースにはメソッド、プロパティ、インデックス、イベントの音のみが含まれます.インタフェースにはコンストラクション関数もフィールドも使用できません.インタフェースには演算子の再ロードも許可されません.インタフェース定義ではメンバーを宣言する修飾子は許可されていません.インタフェースメンバーはすべて共通です.
namespace
{
class Program
{
static void Main(string[] args)
{
}
}
}
namespace
{
interface IFly
{
void Fly();
void MethodA();
}
}
namespace
{
class Bird:IFly
{
public void Fly()
{
}
public void MethodA()
{
}
}
}
2.派生インタフェースインタフェースは互いに継承することができ、その方式はクラスの継承方式と同じpublic interface A{void Method 1();public interface B:A { void Method2(); }
namespace
{
interface IA
{
void Method1();
}
}
namespace
{
interface IB:IA
{
void Method2();
}
}
namespace
{
class Bird:IFly,IB
{
public void Fly()
{
}
public void MethodA()
{
}
public void Method2()
{
}
public void Method1()
{
}
}
}