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

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

Golang接口不需要導(dǎo)入?

Golang接口不需要導(dǎo)入?

Go
守著星空守著你 2021-06-19 18:08:21
如果你看一下File結(jié)構(gòu)體,它的Read()andWrite()函數(shù)與io.Writerandio.Reader接口Read()和Write()函數(shù)完全相同。但是在包io中找不到File包(未導(dǎo)入)。這是否意味著根本不必導(dǎo)入接口即可使用?只要Read()定義與接口相同,就可以暗示它是io.Writerorio.Reader接口的一部分?io:http : //golang.org/pkg/io/操作系統(tǒng):http : //golang.org/pkg/os/
查看完整描述

2 回答

?
一只斗牛犬

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

os不導(dǎo)入包,io因?yàn)?code>io.Reader接口沒(méi)有在包中使用os。

該類型*File碰巧實(shí)現(xiàn)了,io.Reader因?yàn)樗幸粋€(gè)Read具有正確簽名的方法。這個(gè)實(shí)現(xiàn)關(guān)系是隱式的,既不需要也不可能使這個(gè)顯式(例如在 Java 中使用implements ISomeThing)。

你問(wèn):“這是否意味著接口根本不需要導(dǎo)入就可以使用?” 正式的答案是:當(dāng)然不是!如果你想使用io.Reader你必須import "io"。

但是實(shí)現(xiàn)/滿足一個(gè)接口并不是對(duì)這個(gè)接口的使用:任何類型都可以通過(guò)擁有正確的方法來(lái)實(shí)現(xiàn)任何接口(即使是未來(lái)尚未發(fā)明的接口)。


查看完整回答
反對(duì) 回復(fù) 2021-06-21
?
幕布斯7119047

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

導(dǎo)出的實(shí)體是常量、變量和類型。使用它們,即。要引用這樣的導(dǎo)出實(shí)體,必須使用它們的 [qualified] 名稱,而限定符是導(dǎo)出它們的包的基本名稱。這也意味著使用此類包的導(dǎo)入語(yǔ)句。IOW,在文件范圍內(nèi)綁定導(dǎo)出的實(shí)體是 [嚴(yán)格]顯式的。沒(méi)有導(dǎo)入 == 無(wú)法訪問(wèn)導(dǎo)出的東西。

OTOH,實(shí)現(xiàn)接口被指定隱式

一個(gè)類型實(shí)現(xiàn)了包含其方法的任何子集的任何接口,因此可以實(shí)現(xiàn)幾個(gè)不同的接口。例如,所有類型都實(shí)現(xiàn)空接口:

interface{}


查看完整回答
反對(duì) 回復(fù) 2021-06-21
  • 2 回答
  • 0 關(guān)注
  • 271 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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