//解決:在很多情況下,我們並不知道對象是否支持某一接口,這時,可以試圖講對象轉化為接口類型
//在c#裡面,我們可以采取兩種方法獲的對象知否支持某個接口
代碼如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication6
{
class Program
{
static void Main(string[] args)
{
conn cn = new conn();
if (cn is Iconnect)//是否實現了接口
{
Iconnect iconn = (Iconnect)cn;
iconn.read();
Console.ReadLine();
}
else
{
Console.WriteLine("can not connvert");
Console.ReadLine();
}
//IS操作符很清晰,但是操作效率不高,另種方式是AS
conn cnn = new conn();
Iconnect icnn1 = cnn as Iconnect;
if (icnn1 != null)
{
icnn1.write();
Console.ReadLine();
}
else
{
Console.WriteLine("can not connvert");
Console.ReadLine();
}
//as 操作符首先測試轉換是否合法,如果合法就轉換,否則返回NULL。關鍵詞NULL表示空引用
}
}
public interface Iconnect
{
void read();
void write();
}
public class conn : Iconnect
{
public void read()
{
Console.WriteLine("實現了read()方法");
}
public void write()
{
Console.WriteLine(