ホームページ > バックエンド開発 > PHPチュートリアル > PHP 5.0 オブジェクト モデルのプロパティとメソッドの詳細な探索_PHP チュートリアル

PHP 5.0 オブジェクト モデルのプロパティとメソッドの詳細な探索_PHP チュートリアル

WBOY
リリース: 2016-07-21 15:53:03
オリジナル
861 人が閲覧しました

-> と組み合わせることができます。オブジェクトのプロパティにオブジェクトが含まれている場合は、2 つの -> 演算子を使用して内部オブジェクトのプロパティを取得できます。次の例では、プロパティ ルームにこれらの式を配置できます。オブジェクト House には、一連の Room オブジェクトが含まれています。

アクセスメソッドはアクセスプロパティと似ています。 -> 演算子は、次のように getLastLogin を呼び出すだけでインスタンスのメソッドを指定するために使用されます。メソッドは、クラス外の関数とほぼ同じように実行されます。

クラスが別のクラスから継承する場合、サブクラスで宣言されていなくても、親クラスのプロパティとメソッドはサブクラスでも有効になります。前に述べたように、継承は非常に強力です。継承されたプロパティにアクセスしたい場合は、:: 演算子を使用して、そのプロパティを参照するだけです。 :

class Room {
public $name;

function __construct($name="unnamed")
{
$this->name = $name;
}

class House
{
//部屋の配列
public $room;

//空の家を作成
$home = 新しい家;

//いくつかの部屋を追加
$home-> ;room[] = 新しい部屋("寝室");
$home->room[] = new Room("kitchen");
$home->room[] = new Room("bathroom");家の
print($home->room[0]->name);





PHP には 2 つの特別な名前空間があります: 親名前空間は親クラスを指し、もう 1 つは自己名前空間です。スペースは現在のクラスを指します。次の例は、親名前空間を使用して親クラスのコンストラクターを呼び出す方法を示しています。また、self を使用してコンストラクター内の別のクラス メソッドを呼び出します。



コードをコピーします

コードは次のとおりです:


class Animal //Animal
{
public $blood; //熱血または冷血属性 public $name; ; public function __construct ($blood , $name=NULL) { $this->blood = $blood;
if($name)
$this->name = $name; }
}

class Mammal extends Animal //哺乳類
{
public $furColor; //毛皮の色
public $legs;

function __construct($furColor, $legs, $name=NULL)
{parent::__construct( "warm", $name );
$this->furColor = $furColor;
{
parent ::__construct($furColor,4,$name)
}
}

$d = new Dog( 「ブラック アンド タン」、「アンガス」);
オブジェクトのメンバーは次のように呼び出されます: 実行時に変数の名前を決定する必要がある場合は、$this->$Property のような式を使用できます。メソッドを呼び出したい場合は、$obj->$method() を使用できます。

-> 演算子を使用して、以前のバージョンの PHP では許可されていなかった関数の値を返すこともできます。たとえば、$obj->getObject()->callMethod() のような式を作成できます。これにより、中間変数の使用が回避され、ファクトリ パターンなどの特定の設計パターンの実装にも役立ちます。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/318835.html技術記事 -> と組み合わせて使用​​できます。オブジェクトのプロパティにオブジェクトが含まれている場合は、2 つの -> 演算子を使用して内部オブジェクトのプロパティを取得できます。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート