对C# interface接口接触没多长时间,对此起初感觉很简单,C#程序中增加了Interface,在程序的后期扩展及维护中会节省大量人力物力。前期的实现利用新建的Class:Project能够整体约束、调用接口。但涉及到类的实例化,及其属性、方法的调用,则会受到某些限制。在本示例中新建的Program对clsVBProgramer 以及clsCSharpProgramer的属性无法实例化,经过测试发现类Project的WriteProgram无法输出前两者的属性。
C# interface接口实现源代码如下:
- using System;
- namespace Delegate
- {
- class DelegateSample
- {
- static void Main(string[] args)
- {
- clsProject Proj = new clsProject();
- IProgrammer Program;
- //调用VBProgrammer
- Program =new clsVBProgramer();
- Proj.WriteProgram(Program);
- //调用CSharpProgrammer
- Program =new clsCSharpProgramer();
- Proj.WriteProgram(Program);
- }
- }
- //定义接口
- interface IProgrammer
- {
- void WriteCode();
- }
- //定义VBProgrammer类
- class clsVBProgramer:IProgrammer
- {
- string StrVB = "VBProbramer";
- public void WriteCode()
- {
- Console.WriteLine("调用类{0}",StrVB);
- }
- }
- //定义CSarpProgrammer类
- class clsCSharpProgramer : IProgrammer
- {
- string StrCS = "CsharpProgramer";
- public void WriteCode()
- {
- Console.WriteLine("调用类{0}",StrCS);
- }
- }
- //定义Project类,用于
- class clsProject
- {
- public void WriteProgram(IProgrammer Programmer)
- {
- Programmer.WriteCode();
- }
- }
- }
对C# interface接口的一点学习体会就和你分享到这里,希望对你了解C# interface接口有所帮助。
【编辑推荐】