gpt4 book ai didi

oop - OOP 语言等静态成员变量

转载 作者:IT王子 更新时间:2023-10-29 00:34:14 28 4
gpt4 key购买 nike

我是 Go 的新手,然后我通过示例搜索了很多如何拥有带有静态函数/变量的静态类,例如 C#。但是,我找不到任何可以很好地回答它的东西。也许这个问题看起来很愚蠢,但我不喜欢不确定或不完全理解某事。

假设我们有这段代码:

public class Program
{
public static string name = "Program tester.";

public enum Importance
{
None,
Trivial,
Regular,
Important,
Critical
};

public static void tester(Importance value)
{
// ... Test against known Importance values.
if (value == Importance.Trivial)
{
Console.WriteLine("Not true");
}
else if (value == Importance.Critical)
{
Console.WriteLine("True");
}
}
}

如果我理解 Golang 是类 C,那么它是否有一些像上面这样的行为,比如 C++/C# 语言?我上面的代码可以用 C++/C# 实现,还是通过 C 语言传递(使用 C 模块化编程方式)?

最佳答案

Go中没有继承,
但您可以用 Golang 的方式完成所有 OOP 的事情。

另见:
https://github.com/luciotato/golang-notes/blob/master/OOP.md https://www.goinggo.net/2013/07/object-oriented-programming-in-go.html

1: C# 类中的静态变量 => Golang 包中的全局变量
2: C# 中的枚举 => 具有枚举名称和枚举元素的常量类型的新包
3: OOP 中的类 => 结构类型
4: 类方法 => 带有接收者方法的结构
5: C#/Java 抽象方法(C++ 中的纯虚函数)=> io.Reader 等接口(interface)方法
6: public => 名字首字母大写
7: private => 名字首字母小写
8:命名空间=>包名
9: 继承 => 嵌入式结构和嵌入式接口(interface)
10: 线程 => Go 例程
11: 锁 => sync.Mutex
...

关于oop - OOP 语言等静态成员变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37510763/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com