網站首頁 編程語言 正文
一.GO程序目錄結構
在GOPATH目錄下的結構 --bin(存放編譯后生成的可執行文) |----hello.exe(可執行文件) --pkg(存放編譯后生成的包文) |-----(后面用到了在說) --src(存放項目源) |----hello(項目目錄) |------main.go(入口文件,下面會詳解) |----...(多個目錄和上面hello的形式一樣) |-------...
二.GO程序的一般結構
在進行介紹前我先來回顧下之前的main.go文件結構
package main import ( "fmt" ) func main() { fmt.Println("Hello World") }
Go程序是通過package
來組織的,和python類似,只有package
名稱為main的包可以包含main函數,一個可執行的程序有且僅有一個main包
通過import
關鍵字來導入其他非main包
通過const
關鍵字來定義常量
通過var
關鍵字來進行全局變量的聲明與賦值
通過type
鍵字來進行結構(struct)或接口(interface)的聲明
通過func
關鍵字來進行函數的聲明
三.GO程序包的導入與別名運用
包的導入
單獨引入各種包
import "fmt" import "io" import "time" import "strings"
統一引入,省去多個import關鍵字
import( ? ? "fmt" ? ? "io" ? ? "time" ? ? "strings" )
如果導入的包如果沒有調用,在編譯的時候會報編譯錯誤,這個是很關鍵的,所以在編譯報錯的時候可以檢查一下是否有導入的包未調用
包的別名與運用
在實際工作中為了簡寫或者統一命名等一些特殊情況下
import( print "fmt" )
上面就是將fmt替換成print,沒替換前是:
fmt.Println("Hello World")
替換后是:
print.Println("Hello World")
包的別名還有一個省略調用的,非常不建意那么用,所以就不介紹了
四.可見性規格(非常重要)
在GO語言中使用大小寫確定該 常量、變量、類型、接口、結構或函數 是否可以被外部包所調用
函數名首字母小寫為private,表示私有,不可以被外部調用
函數名首字母大寫為public,表示公有,可以被外部調用
1. 首字母小寫函數例:(不可被名部調用)
func getDate(){ return ... }
2. 首字母大寫函數例:(可被外部調用)
func GetDate(){ return ... }
五. GO內置關鍵字
常用一共25個,全部小寫
break
default
func
interface
select
case
defer
go
map
struct
chan
else
goto
package
switch
const
fallthrough
if
range
type
continue
for
import
return
var
六. GO注釋方法
// : 表示單行注釋 /* */ : 表示多行注釋
原文鏈接:https://www.jianshu.com/p/2769947522ae
相關推薦
- 2023-10-15 達夢錯誤碼信息-PRO*C 錯誤碼匯編
- 2022-05-21 詳解C#枚舉中使用Flags特性_C#教程
- 2022-02-12 小程序和H5怎么讓文本只顯示兩行!超出后以...省略號顯示!
- 2023-08-15 vite打包報錯 Rollup failed to resolve
- 2022-06-07 FreeRTOS操作系統的配置示例解析_操作系統
- 2022-04-24 C語言的隨機數rand()函數詳解_C 語言
- 2022-07-11 查看 jvm 參數
- 2024-04-04 netty使用http和webSocket
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支