当前位置: 代码迷 >> C# >> c#接口有关问题
  详细解决方案

c#接口有关问题

热度:90   发布时间:2016-05-05 04:13:13.0
c#接口问题
接口常用吗,一般是怎么定义的,是不是可要可不要?最好有例子
------解决思路----------------------
无论是Interface还是WCF、WS都很有用
面向对象肯定离不开Interface
面向服务肯定离不开WCF、WS、WebAPI之类的
------解决思路----------------------
如果你不是做工厂或做那种插件式的,可以不用接口
------解决思路----------------------
面向对象肯定离不开Interface,abstract
------解决思路----------------------
引用:
接口常用吗,一般是怎么定义的,是不是可要可不要?最好有例子

给你个场景
Interface作为一种契约,只定义功能说明不实现,调用的时候实例化成具体的类,这样实现程序一定的灵活性。


//定义一个接口
Interface Language
{
   void SayHello();
}

//中文打招呼
class Chinese:Language
{
public void SayHello()
{
  Console.WriteLine("大家好,我是吉米");
}
}

//英文打招呼
class English:Language
{
public void SayHello()
{
 Console.WriteLine("Hi,I am Jimmy");
}
}

//调用的时候
Language lg = null;
swith(配置的值)
{
   case 0:
        lg = new Chinese();
        break;
   default:
       lg = new English();
       break;
}
lg.SayHello();


------解决思路----------------------
http://blog.csdn.net/jiankunking/article/details/44915725
------解决思路----------------------
接口可以有助于后期的扩展
至于用不用得看 你的需求了 
------解决思路----------------------
Interface 接口
是对象间沟通的桥梁,任何毫不相干的对象,只要实现了相同的接口,那么他们之间就可以交流
接口是必要的,但不是必须的。
简单的应用就没必要使用接口,但使用了可使日后扩展起来变得方便
------解决思路----------------------
使用接口示例
 // 声明一个接口,用于定义Seak方法,而具体Speak方法功能的实现是在类中进行的
        interface ISelectLanguage
        {
            void Speak(string str);
        }

        // 如果跟中国人对话,则说汉语
        class C_SpeakChinese : ISelectLanguage
        {
            public void Speak(string str)
            {
                MessageBox.Show("您对中国友人说:" + str, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }//codego.net/15/1/1/
        // 如果跟美国人对话,则说英语
        class C_SpeakEnglish : ISelectLanguage
        {
            public void Speak(string str)
            {
                MessageBox.Show("您对中国人说:" +str, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
  相关解决方案