手记

【九月打卡】第2天 Go语言学习

课程名称:Go语言第一课

课程章节:Go语言优点优势及劣势

课程讲师: 郝林

课程内容:

本课程主要是对Go语言代码包的学习

首先了解代码包的作用:编译和归档Go程序的最基本单位。包括胆码划分、集结和依赖的有效组织形式,也是控制权限的辅助手段。

代码包的规则:一个代码包实际上就是一个由导入路径代表的目录;

导入路径为 《工作区目录》/src/文件

    或 《工作区目录》/pkg/文件

代码包的声明

每个源码文件必须声明其所属的代码包;同一个代码包中的所有源码文件声明的代码包应该是相同的

代码包声明与导入的区别:

代码包声明:应该是该代码包的导入路径的最右子路径

代码包导入:应该与其导入路径一直,例如:flag fmt strings  可以写成  

import(

    "flag"

     "fmt"

    "strings"

)

带别名方式导入: import str "strings"  调用 str.HasPrefix()

本地化导入: import . "strings" 调用时候直接写函数   HasPrefix()

仅初始化: import _ "strings"  仅执行初始化函数  init()

代码包初始化 init

代码包初始化函数即:无参数声明和结果声明的init函数

init函数可以被声明在任何文件中,且可以有多个

init函数的执行时机-----单一代码包内

对所有全局变量进行求值-->执行所有的init函数。

init函数的执行时机-----不同代码包之间

注意:我们不应该对在同一个代码包中被导入的多个代码包的init函数的执行顺序做出假设!

执行被导入的代码包中的init函数-->执行导入它的那个代码包的init函数

导入顺序 A -> B -> C

执行顺序 C B A

init函数的执行时机-----所有涉及到的代码包


课程收获:

通过这次课程了解了Go 的初始化函数 init(), 一个文件中如果存在多个函数的话,init 函数会一个执行 。还有代码包的声明的几种形式,与Java的包的导入有差异,比较简单,一目了然。有了初步的了解后,相信会对接下来的 学习打下一个好的基础,GOGOGO!!!




0人推荐
随时随地看视频
慕课网APP