Go语言:公开和私有化的属性和函数
2019-11-07 本文已影响0人
白祤星
简介:
-
Go语言
不像其它编程语言
有public
、protected
、private
等访问控制修饰符
-
Go语言
是通过字母大小写
以及下划线开头
来控制可见性的
- 定义的
常量
、变量
、类型
、接口
、结构
、函数
等的名称 -
大写字母开头
表示能被其它包访问或调用
(相当于public
) -
非大写开头
表示只能在包内使用
(相当于private
)
代码实例:
-
main.go
如下
package main
import (
"./util"
)
func main() {
println(util.A) // 调用公开常量:成功
println(util.a) // 调用私有常量:失败
println(util._A) // 调用私有常量:失败
println(util.B) // 调用公开变量:成功
println(util.b) // 调用私有变量:失败
println(util._B) // 调用私有变量:失败
util.Function() // 调用公开函数:成功
util.function() // 调用私有函数:失败
util._Function() // 调用私有函数:失败
util.UsePrivate() // 通过一个公开的函数使用私有的属性和函数:成功
}
-
util/test.go
如下
package util
const (
A = `这是一个公开的常量`
a = `这是一个私有的常量`
_A = `这也是一个私有的常量`
)
var (
B = `这是一个公开的变量`
b = `这是一个私有的变量`
_B = `这也是一个私有的变量`
)
func Function() {
println(`这是一个公开的函数`)
}
func function() {
println(`这是一个私有的函数`)
}
func _Function() {
println(`这也是一个私有的函数`)
}
func UsePrivate() {
// 调用私有属性
println(a)
println(_B)
// 调用私有函数
_Function()
}