私は、というクラスを持っていると言うことができますClass_Tool_RandomColor。それはすべてランダムな色を返します。 というメソッドがあります。getValue() もう1つはClass_Tool_RandomLineTypeです。これは実線、点線などのようにラインタイプを返します。getValue()他のクラスの中でPHPクラスを使用する最も良い方法は?
ここでは、ランダムな色とランダムラインタイプが必要な多くのクラスがあります。 Class_Square、Class_Circle、Class_Triangleのように...
/* First I create my Class_Tool_RandomColor on top of my php file */
$colorObj = new Class_Tool_RandomColor();
$lineObj = new Class_Tool_RandomLineType();
... ... ... ...
/* Now when I created my other classes I pass the object to them */
$squareObj = new Class_Square($colorObj,$lineObj);
... ...
$circleObj = new Class_Circle($colorObj,lineObj);
... ...
は、これが最善の方法ですか?または他の方法がありますか? 私は延長を使うことができると思いますか?
class Class_Tool_RandomColor extends Class_Square{
しかし、私は拡張を使用する場合、どのような複数のクラスを使用すると、クラスを拡張する場合は、派生クラスのインスタンスが作成されたとき、それは同時にロードすることを意味し
*「これが最善の方法ですか?」*は、SOのための良い質問ではありませんが、私はこのための構成をお勧めします。あなたの継承の例は動作しません – Phil
より良いオプションのインターフェイスを使用する、PHPは複数の継承をサポートしていない、あなたはインターフェイスを使用する必要がある問題を克服する –
したがって、複数のクラスを親クラスに渡すことはおすすめしません?何故なの? 私はそれを理解しやすいチュートリアルを見つけることができると仮定して、私はインターフェイス上でお読みになります。 – Lixo