何时实施和延期?
- 什么时候应该
implement
或者extend
使用? - 什么是现实世界的例子?
它是否正确?
实现似乎是强制在类中存在某些方法的方法,并且这些方法函数调用的格式正确。 实现不是一种将variables或“设置”传递给类的方法吗?
预期的实际情况:我有一个电子商务平台,具有多个支付类别,都遵循相同的devise。 当添加新的付款类别时,可以很容易地遵循interface
的定义devise,从一开始就确保所有零碎件都存在。
扩展类使得扩展(child?)类inheritance了除父类以外的所有内容,除了声明为private
方法和variables外?
预期的现实生活场景:我有一个叫做sessions
类,它有两个名为sessioncookies
和databasesessions
子类。 sessioncookies
和databasesessions
会话一起inheritance父会话中的许多相互configuration选项,使得更改configuration选项以轻松影响各种最终的访问者数据存储容易。
inheritance对于减less重写的代码量非常有用。 如果你有几个有一些常用的方法或领域的类,而不是一遍又一遍地定义这些方法和字段,你可以将它们归入一个基类,并让每个子类扩展该基类。
当你想定义一个通用的协议来表示一组对象的行为时,接口(和implements
)是很有用的。 例如,您可能希望要求可比较的对象可以进行相等和散列比较等。
使用inheritance最终是一个deviseselect。 注意在多个类中定义相同方法的情况; 这些都是很好的例子,你可以把这些方法分解成基类。 对于具有相同特征的类也是如此:可以通过将这些特征放入一个接口来实现这些相关类,从而保证一致性。
inheritance是OOP中的一个大概念,超越了PHP。 我build议你阅读维基百科关于inheritance的文章 ,或者阅读“四人帮”的devise模式 。
我相信你对inheritance的理解主要是正确的。 下一步将是在生产中使用它。