首頁 > 後端開發 > Golang > 主體

Go語言屬於什麼

青灯夜游
發布: 2023-02-10 16:20:00
原創
3595 人瀏覽過

Go語言屬於靜態編譯語言。 go語言是Google開發的一種靜態強類型、編譯型、並髮型,並具有垃圾回收功能的程式語言,而Go是基於Inferno作業系統所開發的。在Go語言中,變數是有明確類型的,編譯器也會檢查變數類型的正確性,宣告變數的一般形式為「var name type」。

Go語言屬於什麼

本教學操作環境:windows10系統、GO 1.18、thinkpad t480電腦。

Go語言屬於靜態編譯語言。

Go(又稱 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 所發展的靜態強型別、編譯型語言。 Go 語言文法與 C 相近,但功能上有:記憶體安全,GC(垃圾回收),結構形態及 CSP-style 並發計算。

Go是基於Inferno作業系統所開發的。 Go於2009年11月正式宣布推出,成為開放原始碼項目,並在Linux及Mac OS X平台上進行了實現,後來追加了Windows系統下的實現。在2016年,Go被軟體評估公司TIOBE 選為「TIOBE 2016 年最佳語言」。目前,Go每半年發布一個二級版本(即從a.x升級到a.y)。

Go的語法接近C語言,但對於變數的宣告有所不同。 Go支援垃圾回收功能。 Go的平行模型是以東尼·霍爾的通訊順序進程(CSP)為基礎,採取類似模型的其他語言包括Occam和Limbo,但它也具有Pi運算的特徵,例如通道傳輸。在1.8版本中開放插件(Plugin)的支持,這意味著現在能從Go中動態載入部分函數。

與C 相比,Go不包括如枚舉、異常處理、繼承、泛型、斷言、虛函數等功能,但增加了切片(Slice) 型、並發、管道、垃圾回收、介面(Interface)等特性的語言級支援。 Go 2.0版本將支援泛型,對於斷言的存在,則持負面態度,同時也為自己不提供類型繼承來辯護。

不同於Java,Go內嵌了關聯陣列(也稱為雜湊表(Hashes)或字典(Dictionaries)),就像字串類型一樣。

Go語言宣告變數

靜態語言(強類型語言)是編譯時變數的資料類型就可以確定的語言,大多數靜態語言要求在使用變數之前必須生命資料型態。

在Go語言中,變數(variable)是有明確類型的,編譯器也會檢查變數類型的正確性。在數學概念中,變數表示沒有固定值且可改變的數。但從電腦系統實現角度來看,變數是一段或多段用來儲存資料的記憶體。

宣告變數的一般形式:

var name type
登入後複製

其中,var 是宣告變數的關鍵字,name 是變數名,type 是變數的類型。

要注意的是,Go語言和許多程式語言不同,它在宣告變數時將變數的型別放在變數的名稱之後。這樣做的好處就是可以避免像C語言中那樣含糊不清的聲明形式,例如:int* a, b; 。其中只有 a 是指針而 b 不是。如果你想要這兩個變數都是指針,則需要將它們分開書寫。而在Go 中,則可以和輕鬆地將它們都宣告為指標型別:

var a, b *int
登入後複製

當一個變數被宣告之後,系統會自動賦予它該型別的零值:int 為0,float 為0.0, bool 為false,string 為空字串,指標為nil 等。所有的內存在 Go 中都是經過初始化的。

推薦學習:Golang教學

以上是Go語言屬於什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!