Go語言面試題分享:選擇題10道(3)go語言學習

老男孩Linux發表於2019-11-27

Go語言面試題分享:(選擇題10道)

1、關於init函式,下面說法正確的是( )

A. 一個包中,可以包含多個init函式

B. 程式編譯時,先執行匯入包的init函式,再執行本包內的init函式

C. main包中,不能有init函式

D. init函式可以被其他函式呼叫

參考答案:AB

2、golang中沒有隱藏的this指標,這句話的含義是( )

A. 方法施加的物件顯式傳遞,沒有被隱藏起來

B. golang沿襲了傳統物件導向程式設計中的諸多概念,比如繼承、虛擬函式和建構函式

C. golang的物件導向表達更直觀,對於程式導向只是換了一種語法形式來表達

D. 方法施加的物件不需要非得是指標,也不用非得叫this

參考答案:ACD

3、golang中的引用型別包括( )

A. 陣列切片 B. map C. channel D. interface

參考答案:ABCD

4、golang中的指標運算包括( )

A. 可以對指標進行自增或自減運算

B. 可以透過“&”取指標的地址

C. 可以透過“*”取指標指向的資料

D. 可以對指標進行下標運算

參考答案:BC

5、下面賦值正確的是( )

A. var x = nil

B. var x interface{} = nil

C. var x string = nil

D. var x error = nil

參考答案:BD

6、關於整型切片的初始化,下面正確的是( )

A. s := make([]int)

B. s := make([]int, 0)

C. s := make([]int, 5, 10)

D. s := []int{1, 2, 3, 4, 5}

參考答案:BCD

7、關於GoMock,下面說法正確的是( )

A. GoMock可以對interface打樁

B. GoMock可以對類的成員函式打樁

C. GoMock可以對函式打樁

D. GoMock打樁後的依賴注入可以透過GoStub完成

參考答案:AD

8、關於介面,下面說法正確的是( )

A. 只要兩個介面擁有相同的方法列表(次序不同不要緊),那麼它們就是等價的,可以相互賦值

B. 如果介面A的方法列表是介面B的方法列表的子集,那麼介面B可以賦值給介面A

C. 介面查詢是否成功,要在執行期才能夠確定

D. 介面賦值是否可行,要在執行期才能夠確定

參考答案:ABC

9、golang中大多數資料型別都可以轉化為有效的JSON文字,下面幾種型別除外( )

A. 指標 B. channel C. complex D. 函式

參考答案:BCD

10、關於go vendor,下面說法正確的是( )

A. 基本思路是將引用的外部包的原始碼放在當前工程的vendor目錄下面

B. 編譯go程式碼會優先從vendor目錄先尋找依賴包

C. 可以指定引用某個特定版本的外部包

D. 有了vendor目錄後,打包當前的工程程式碼到其他機器的$GOPATH/src下都可以透過編譯

參考答案:ABD


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952968/viewspace-2665850/,如需轉載,請註明出處,否則將追究法律責任。

相關文章