c#接口使用示例分享
1、接口:
接口與抽象類一樣,也是表示某種規(guī)則,一旦使用了該規(guī)則,就必須實(shí)現(xiàn)相關(guān)的方法。對(duì)于C#語言而言,由于只能繼承自一個(gè)父類,因此若有多個(gè)規(guī)則需要實(shí)現(xiàn),則使用接口是個(gè)比較好的做法。
2、接口的定義
interface 接口名
{
方法聲明;
}
3、不同接口中若有多個(gè)相同名稱的方法,則需要顯式指定接口名,例如:
4、接口的使用
使用接口也可以實(shí)現(xiàn)多態(tài)。
代碼如下:
class Program
{
static void Main(string[] args)
{
//提供三個(gè)類,完成工資的計(jì)算
List<ICalu> list = new List<ICalu>();
list.Add(new Boss());
list.Add(new Clert());
list.Add(new Clert());
list.Add(new Customer());
foreach (ICalu emp in list)
{
emp.Calu(); //多態(tài)
}
}
}
class Boss : ICalu
{
public void Calu()
{
Console.WriteLine("計(jì)算老板工資");
}
}
class Customer : ICalu
{
public void Calu()
{
Console.WriteLine("計(jì)算客戶工資");
}
}
class Clert : ICalu
{
public void Calu()
{
Console.WriteLine("計(jì)算職員工資");
}
}
interface ICalu
{
void Calu();
}
5、接口應(yīng)用場(chǎng)合舉例
6、接口demo
using System;
using System.Collections.Generic;
using System.Linq; using System.Text;
namespace ConsoleApplication1 {
class Program {
static void Main(string[] args) {
List<IShow> list = new List<IShow>();
list.Add(new Map());
list.Add(new Voice());
list.Add(new Video());
list.Add(new ThreeD());
foreach(IShow ishow in list) {
ishow.Show(); }
}
}
interface IShow {
void Show(); }
public class Map:IShow {
public void Show()
{
Console.WriteLine("顯示圖片"); }
}
public class Voice : IShow {
public void Show() {
Console.WriteLine("播放聲音"); }
}
public class Video : IShow {
public void Show()
{
Console.WriteLine("顯示視頻"); }
} public class ThreeD : IShow {
public void Show() {
Console.WriteLine("3D交互"); }
}
}
相關(guān)文章
C# Winform實(shí)現(xiàn)圓角無鋸齒按鈕
這篇文章主要為大家詳細(xì)介紹了C# Winform實(shí)現(xiàn)圓角無鋸齒按鈕,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07C# TreeView無限目錄樹實(shí)現(xiàn)方法
這篇文章主要介紹了C# TreeView無限目錄樹實(shí)現(xiàn)方法,實(shí)例分析了TreeView節(jié)點(diǎn)操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06通過VS中的數(shù)據(jù)源選擇對(duì)話框簡(jiǎn)單實(shí)現(xiàn)數(shù)據(jù)庫連接配置[圖]
通過VS中的數(shù)據(jù)源選擇對(duì)話框簡(jiǎn)單實(shí)現(xiàn)數(shù)據(jù)庫連接配置[圖]...2007-03-03基于C#調(diào)用c++Dll結(jié)構(gòu)體數(shù)組指針的問題詳解
下面小編就為大家分享一篇基于C#調(diào)用c++Dll結(jié)構(gòu)體數(shù)組指針的問題詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2017-12-12C#?wpf?無邊框窗口添加陰影效果的實(shí)現(xiàn)
在本篇內(nèi)容中小編給大家整理了一篇關(guān)于C#?wpf?無邊框窗口添加陰影效果的具體方法內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下2022-11-11