Go语言程序:在类中使用this关键字
在Go编程语言中,没有类的概念,因此使用结构体来演示在类中使用`this`关键字。`this`关键字指的是程序中当前正在执行的当前方法或对象。
在本文中,我们将使用两个例子来了解程序的工作原理。在第一个例子中,我们将通过调用`this`结构体上的方法并打印其名称和年龄来使用`Child`结构体;在第二个例子中,我们将使用`Rectangle`结构体,通过调用`this`结构体上的方法来打印其面积。让我们来看一下实际实现来理解程序。
算法
在程序中导入`fmt`包,这将有助于输入和输出的格式化。
创建一个具有所需字段的结构体。
为了演示`this`关键字的使用,创建一个没有参数的方法,并在结构体上调用该方法。
在主函数中设置实例中的值并调用该方法。
当调用该方法时,当前实例的字段将打印在控制台上。
使用`fmt`包中的`fmt.Println`函数执行打印语句。
示例1
在这个例子中,我们将创建一个具有两个字段`Name`和`age`的`Child`结构体。在`Child`结构体上创建一个没有参数的`greet`函数,当调用该方法时,其中的语句将作为输出打印。在这里,`c.Name`和`c.Age`将指代当前实例。让我们看看代码是如何执行的。
package main
import "fmt"
type Child struct {
Name string
Age int
}
func (c Child) greet() {
fmt.Printf("Hello, my name is %s and I'm %d years old.\n", c.Name, c.Age)
}
func main() {
c := Child{"Veronica", 16} //set the values of the instance
c.greet() //call the method
}
输出
Hello, my name is veronica and I'm 16 years old.
示例2
在这个例子中,我们创建结构体的方式与上一个例子类似。这里,矩形的两个字段`width`和`height`将相乘以获得当前实例的面积。在主函数中,当调用`Area()`方法时,将打印矩形的面积。让我们看看代码是如何执行的。
package main
import "fmt"
type Rectangle struct {
Width float64
Height float64
}
func (rect Rectangle) Area() float64 {
return rect.Width * rect.Height
}
func main() {
rect := Rectangle{6.0, 10.0}//set the values in the instance
fmt.Printf("Area of rectangle with width %.2f and height %.2f is %.2f\n", rect.Width, rect.Height, rect.Area()) //print the area of the rectangle
}
输出
Area of rectangle with width 6.00 and height 10.00 is 60.00
结论
我们使用两个例子执行并编译了该程序,展示了在类中使用`this`关键字。在第一个例子中,使用了`child`结构体;在第二个例子中,使用了`rectangle`结构体来演示`this`关键字的使用。这里,它是通过在结构体上调用方法并打印字段值来演示的。
广告
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP