我正在搜索接口示例,我发现了一个。下面给出了这个例子......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace InterFaceDemo
{
interface IOne
{
void ONE();//Pure Abstract Method Signature
}
interface ITwo
{
void TWO();
}
interface IThree:IOne
{
void THREE();
}
interface IFour
{
void FOUR();
}
interface IFive:IThree
{
void FIVE();
}
interface IEVEN:ITwo,IFour
{
}
class ODDEVEN:IEVEN,IFive//Must Implement all the abstract method, in Derived class.
{
public void ONE()//Implementation of Abstract Method.
{
Console.WriteLine("This is ONE");
}
public void TWO()
{
Console.WriteLine("This is TWO");
}
public void THREE()
{
Console.WriteLine("This is THERE");
}
public void FOUR()
{
Console.WriteLine("This is FOUR");
}
public void FIVE()
{
Console.WriteLine("This is FIVE");
}
}
}
Program.cs的
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace InterFaceDemo
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("This is ODD");
IFive obj1 = new ODDEVEN();
obj1.ONE();
obj1.THREE();
obj1.FIVE();
Console.WriteLine("\n\nThis is EVEN");
IEVEN obj2 = new ODDEVEN();
obj2.TWO();
obj2.FOUR();
Console.ReadLine();
}
}
}
从这个示例中,接口概念已经被清除,但有一件事让我感到困惑,那就是这条线......
IFive obj1 = new ODDEVEN();
他是如何制造一个物体......从我的想法来看,他应该以这种方式制造和反对
ODDEVEN obj1 = new ODDEVEN();
他正在制作" ODDEVEN" class..can任何人都可以用简单的语言解释我这个对象的创建,因为我是programmimg的新手......提前致谢
答案 0 :(得分:1)
这是以下的捷径:
ODDEVEN temp = new ODDEVEN();
IFive obj1 = temp;
这是有效的,因为ODDEVEN实现了IFive,因此它可以分配给该接口引用。