Golang程序 显示类中静态关键字的用法
什么是Golang中的静态关键字
术语 “静态 “是用来描述具有固定或不变的值或行为的变量、函数和方法。在Go中,静态关键字并不存在。在Go中,我们使用术语 “变量 “来描述存储和操作数据的内存位置。
静态变量有一个特性,就是即使它们离开了它们的范围,也会保留它们的值!因此,静态变量会保留它们之前的值。因此,静态变量在其先前的作用域中保留其先前的值,而在新的作用域中不会再次初始化。
算法
- 第1步 – 首先,我们需要导入fmt包。
-
第2步 – 然后,创建一个名为MyStruct的类,并在其中定义一个int类型的属性。
-
第3步 – 然后,我们需要为这个变量创建一个函数,并在其中执行一些任务。在这个例子中,我们只是简单地打印其中的参数值。
-
第4步– 现在,启动main()函数。为上面创建的结构定义一个对象,并使用”. “符号将数据值存储到其中。
-
第5步 – 现在,调用上面创建的方法,它将打印该变量的值。
例子1
在这个例子中,我们将编写一个go语言程序,通过为一个类创建一个函数来展示静态关键字在该类中的用法。
package main
import "fmt"
// creating a class
type MyStruct struct {
staticVar int
}
// creating a function to the class
func (s MyStruct) staticMethod() {
fmt.Println("staticVar:", s.staticVar)
}
func main() {
// initializing an object
var s MyStruct
s.staticVar = 1
s.staticMethod()
}
输出
staticVar: 1
例子2
在这个例子中,我们将编写一个go语言程序,通过创建一个指向该类的指针函数来展示静态关键字在该类中的用法。
package main
import "fmt"
type MyStruct struct {
staticVar int
}
func (s *MyStruct) staticMethod() {
fmt.Println("staticVar:", s.staticVar)
}
func main() {
var s MyStruct
s.staticVar = 1
s.staticMethod()
}
输出
staticVar: 1
例3
在这个例子中,我们将写一个go语言程序,通过在定义类的函数中定义一个变量来展示静态关键字的用法。
package main
import "fmt"
type MyStruct struct {
staticVar int
}
func (s MyStruct) staticMethod() {
s.staticVar = 2
fmt.Println("staticVar:", s.staticVar)
}
func main() {
var s MyStruct
s.staticMethod()
}
输出
staticVar: 2
例4
在这个例子中,我们将编写一个go语言程序,通过在一个函数中定义一个变量给类,并将对象的指针作为参数传给它,来展示静态关键字的用法。
package main
import "fmt"
type MyStruct struct {
staticVar int
}
func (s *MyStruct) staticMethod() {
s.staticVar = 2
fmt.Println("staticVar:", s.staticVar)
}
func main() {
var s MyStruct
s.staticMethod()
}
输出
staticVar: 2
总结
我们已经成功地编译并执行了一个Go语言程序,以展示静态关键字在类中的用法,并附有实例。在前两个例子中,我们创建了静态变量,并在main()函数中为变量赋值,而在后两个例子中,我们为函数使用了指针式变量。