oop - 什么时候使用委托(delegate)而不是继承?

标签 oop inheritance delegation

有人可以解释一下我什么时候想使用委托(delegate)而不是继承吗?

最佳答案

当您想要“复制”/公开基类的 API 时,您可以使用继承。 当您只想“复制”功能时,请使用委派。

一个例子: 您想从列表中创建一个堆栈。栈只有pop、push和peek三种。鉴于您不希望在堆栈中使用push_back、push_front、removeAt 等功能,因此您不应该使用继承。

关于oop - 什么时候使用委托(delegate)而不是继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/832536/

相关文章:

c# - 在使用对象时从一种实现类型转换为另一种实现类型是否合适?

javascript - 命名空间和继承 : super constructor with JavaScript chain of responsibility

c++ - 如何修复“无法使用 value_type 类型(又名 Derived*)的左值初始化 Base* 类型的返回对象?

Java SPNEGO 身份验证和 Kerberos 约束委派 (KCD) 到后端服务

c++ - 链接器错误 : unsolved external symbol

PHP mysql PDO 扩展类错误

c++ - OOP 和类组合错误

java - 如何实现抽象子类继承的方法?

asp.net - ASP.NET 中的模拟和委托(delegate)(使用 SQL Server)

objective-c - .delegate=self 是什么意思?