PHP 类对象这样相互继承 extends 是否是错误的?(相互继承)
/TxLibrary
/txOraApi
-oraBase.class.php
-oraNews.class.php
-oraPic.class.php
/txWebApi
-webBase.class.php
-webNews.class.php
-webPic.class.php
/txWapApi
-wapBase.class.php : class wapBase extends TxBase {}
-wapNews.class.php : class wapNews extends wapBase {}
-wapPic.class.php : class wapPic extends wapBase {}
-TxBase.class.php : class TxBase {}
-TxNews.class.php : class TxNews extends TxBase {}
-TxPic.class.php : class TxPic extends TxBase {}
说明
这是我自己的思路,因为有三个接口,wap ora web。所以建立了三个类库文件夹。
但是基类 wapBase.class.php webBase.class.php oraBase.class.php 他们之间会都用到 TxBase.class.php 的方法。而TxNews.class.php 也可能会用到TxBase.class.php 的方法。所以
TxNews.class.php extends TxBase.class.php ,但是在TxNews.class.php 这样的类库方法,比如 getList() 方法,调用的 是oraNews::getList(),但是oraNews extends oraBase,而oraBase 又 extends TxBase。
也就是说
class TxNews extends TxBase {
public function getList(){
return oraNews::getList();
}
}
class oraNews extends oraBase {
public function getList(){
$param = array();
return parent::getData($param);
}
}
class oraBase extends TxBase {
public function getData(){
//curl post remote java web api to get Data
return array();
}
}
这样继承是否是有问题,或者本身思路就是错误的。
粤漫三色堇
10 years, 2 months ago