第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

請(qǐng)問(wèn)C# 接口如何調(diào)用?

請(qǐng)問(wèn)C# 接口如何調(diào)用?

我發(fā)現(xiàn)一個(gè)問(wèn)題定義了一個(gè)接口:interface aa{void add();}定義一個(gè)類(lèi)繼承接口class bb:aa{public void add(){messeagebox.show("接口");}}我發(fā)現(xiàn)程序里有人這樣就可以調(diào)用aa at=new aa();at.add();求原理沒(méi)錯(cuò)的,我確實(shí)看到他是這么用的,不過(guò)他開(kāi)頭有個(gè)初始化aa at= IoC.Resolve<aa>();也許在這里做了什么東西
查看完整描述

1 回答

?
互換的青春

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊

我們定義一個(gè)接口
public interface IBark
{
void Bark();
}
再定義一個(gè)類(lèi),繼承于IBark,并且必需實(shí)現(xiàn)其中的Bark()方法
public class Dog:IBark
{
public Dog()
{}
public void Bark()
{
Consol.write("汪汪");
}
}
然后,聲明Dog的一個(gè)實(shí)例,并調(diào)用Bark()方法
Dog 旺財(cái)=new Dog();
旺財(cái).Bark();
從接口的定義方面來(lái)說(shuō),接口其實(shí)就是類(lèi)和類(lèi)之間的一種協(xié)定,一種約束.還拿上面的例子來(lái)說(shuō).所有繼承了IBark接口的類(lèi)中必需實(shí)現(xiàn)Bark()方法.那么從用戶(hù)(使用類(lèi)的用戶(hù))的角度來(lái)說(shuō),如果他知道了某個(gè)類(lèi)是繼承于IBark接口,那么他就可以放心大膽的調(diào)用Bark()方法,而不用管Bark()方法具體是如何實(shí)現(xiàn)的.比如,我們另外寫(xiě)了一個(gè)類(lèi).
public class Cat:IBark
{
public Cat()
{}
public void Bark()
{
Consol.write("喵喵");
}
}

一個(gè)接口
using System;
using System.Collections.Generic;
using System.Text;
namespace com.zh.jieKou
{
interface jieKou
{
void add();
void delte();
}
}

下面是較常用的使用方法
using System;
namespace ClassLibrary2
{
interface IEmploy //接口
{
void Speak(); //方法
}
class Hello:IEmploy //Hello類(lèi)實(shí)現(xiàn)接口
{
public void Speak() //實(shí)現(xiàn)方法
{
Console.WriteLine("Hello:朋友");
}
}
class Sorry:IEmploy //Sorry類(lèi)實(shí)現(xiàn)接口
{
public void Speak() //實(shí)現(xiàn)方法
{
Console.WriteLine("Sorry:朋友");
}
}
}
實(shí)現(xiàn)
//直接調(diào)用
IEmploy Ie = new Hello();
Ie.Speak(); //調(diào)用Hello類(lèi)實(shí)現(xiàn)的接口
IEmploy Ie = new Sorry();
Ie.Speak();
//反射調(diào)用 記住反射的空間引用 using System.Reflection;
Assembly Asm = Assembly.Load("ClassLibrary2");//反射出空間
Type type = Asm.GetType("ClassLibrary2.Hello");//反射出空間下的類(lèi)
object AssClas = Activator.CreateInstance(type);//動(dòng)態(tài)實(shí)力化反射回來(lái)的指定空間下的指定類(lèi)
IEmploy Ie = (IEmploy)AssClas; ////轉(zhuǎn)換為接口類(lèi)型
//常用的就這幾種方法



查看完整回答
反對(duì) 回復(fù) 2018-12-15
  • 1 回答
  • 0 關(guān)注
  • 1362 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)