using System;
interface Interface1
{
void printOut();
}
interface Interface2
{
// Methodを衝突させる
void printOut();
}
// Interfaceの多重継承、多重実装
class SampleClass : Interface1, Interface2
{
public void printOut()
{
Console.WriteLine("SampleClass");
}
// Interface1のMethodを指定
void Interface1.printOut()
{
Console.WriteLine("Interface1");
}
// Interface2のMethodを指定
void Interface2.printOut()
{
Console.WriteLine("Interface2");
}
}
class MainClass
{
static void Main()
{
SampleClass sample = new SampleClass();
// 出力値:SampleClass
sample.printOut();
// Interface1にCast
Interface1 sample1 = (Interface1)sample;
// 出力値:Interface1
sample1.printOut();
// Interface2にCast
Interface2 sample2 = (Interface2)sample;
sample2.printOut();
}
}
0 コメント:
コメントを投稿