php指定参数部类
php指定参数类型public function execute(PwThreadDataSource $ds) {
$this->_ds = $ds;
都说php声明变量的时候不要指明类型,那这个参数为什么指明了为 PwThreadDataSource类型?而且这是个抽象类,抽象类不是不能声明对象的吗?没搞懂,难道多态?
abstract class PwThreadDataSource {
protected $urlArgs = array();
/**
* 获取帖子统计数
*
* @return int
*/
abstract public function getTotal();
/**
* 获取帖子
*
* @param int $limit 获取条目
* @param int $offset 帖子起始偏移量
* @return array
*/
abstract public function getData($limit, $offset);
------解决方案--------------------
execute(PwThreadDataSource $ds)
这个 $ds 是形参,这个声明只是为了约定调用者能传入PwThreadDataSource类或其子类的对象,以供函数内代码调用。
这样做也是为了协调编码,至少我不用看注释或代码,就知道该传个怎样的参数进去。
PHP之友评论