Golang Go语言中的struct

发布于 1周前 作者 itying888 来自 Go语言

一个 struct 实现接口中的方法,是必须写在 struct 当前文件里面,还是必须写在 struct 当前文件所在的 package 里面,还是可以随意位置

在其他文件这个 struct 对象调用方法,我用的 goland,点击这个方法总是跳到 interface,不好找这个方法的实现

我说的不清楚,大家明白我的意思吗


Golang Go语言中的struct
5 回复

应该写在 package 里面就可以,可以在不同的文件里。

更多关于Golang Go语言中的struct的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


一个包里面就行,不限制文件。

package 里面,可以任意位置。goland 跳到接口是因为当前推断就是 interface。比如函数参数的传入类型是 interface。

package main

type animal interface {
fuck()
}

type human struct {
age int
}

func (h human) fuck() {
println(“oh my yes”)
}

func main() {
var p animal
p = human{age: 18}
p.fuck()
}

在Golang(又称Go语言)中,struct 是一种复合数据类型,它允许你将多个不同类型的数据项组合成一个单一的类型。这是Go语言中实现数据封装和抽象的关键机制之一。

定义一个struct时,你需要指定其名称和包含的字段。字段可以包含不同的数据类型,如整型、浮点型、字符串、布尔值,甚至是其他struct类型。这使得struct成为表示复杂数据结构(如用户信息、订单详情等)的强大工具。

例如,定义一个表示人(Person)的struct可能如下所示:

type Person struct {
    Name string
    Age  int
    Email string
}

在这个例子中,Person struct有三个字段:Name(字符串类型),Age(整型),和Email(字符串类型)。

创建struct实例(即对象)时,可以使用字面量语法。例如:

p := Person{Name: "Alice", Age: 30, Email: "alice@example.com"}

此外,Go语言的struct还支持嵌套,即一个struct的字段可以是另一个struct类型。这有助于进一步组织复杂的数据结构,使其更具可读性和可维护性。

总的来说,struct是Go语言中非常核心和强大的特性,它使得数据建模更加灵活和高效。通过合理使用struct,你可以构建出清晰、可维护的代码结构,从而更好地应对各种编程挑战。

回到顶部