go能实现父类指针指向子类对象吗,或者有其他方法?
例如C++中
class Fu
{
public:
Fu(){...}
void say(){...}
};
class Zi : public Fu
{
public:
Zi(){...}
void say(){...}
};
void Work(Fu **fu)
{
cout << "" << endl;
}
int main()
{
Fu *people1 = new Zi;
Fu *people2 = new Zi;
people1->say();
people2->say();
Work(people1);
...
Work(people2);
return 0;
}
这种父类指针指向子类对象和里面的Work函数在go语言中该如何实现?
又或者这样问,例如一个people类,我可以分为为很多工种类,都可以用一个people指针指向工种对象去创建对象,然后方便传入其他函数统一做各种事情,这在go语言中怎么实现?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
用组合或者使用interface实现
组合我的理解是类型1包含多个类型2,类型3又可以包含多个类型1,或者一个结构体内嵌几个结构体可以创建这个结构体对象去调用里面的结构体的东西,但是好像还是解决不了我程序里Work函数的行为?