【发布时间】:2013-01-29 10:55:51
【问题描述】:
我正在开发一个软件项目,并且在查看其他项目的代码(例如 Zend 框架)时注意到它们使用某种继承的多级类。
一个例子是$system->sessions->closeSession()。我知道对象提供了类似的功能,但我不知道它们可以用于实际的可调用方法。
如何使用这种技术创建一个类?
【问题讨论】:
-
这本身不是继承,尽管这些类很可能使用继承(使用
extends关键字定义)。对象$system有一个公共属性$sessions,它本身就是一个对象,并且有一个closeSession方法。一般来说,公共属性不是最好的方法:$sessions应该是公共的getSessions()方法,以保持只读。 -
另外,我发现使用适当的 phpdoc cmets 的 getter 方法在类型提示方面比公共属性更可靠,尽管这可能只是 Netbeans 打嗝
:)
标签: php class object inheritance methods