PHP のクラスとオブジェクト、コンストラクターとデストラクター、およびこのバインディングの詳細な説明

WBOY
リリース: 2016-06-23 13:32:17
オリジナル
837 人が閲覧しました

1. クラスとオブジェクト

PHP に限らず、すべてのオブジェクト指向プログラミング言語では、クラスは抽象クラスであり、オブジェクトはクラスのインスタンスです。すべての抽象化は「似ているものを抽出する」です。

人生において、人々は同じタイプであり、類似点は次のとおりです: 人々は顔の特徴、髪、手と足を持ち、食べることができ、眠ることができます。

PHPのクラスとオブジェクトコードの実装を見てみましょう

<?php class Person{ //定义一个叫Person的类 public $name; //声明共有的属性:名字 public function say(){ //声明共有的方法:说话 echo 'saying'; } } ?>
ログイン後にコピー

コンストラクターとデストラクター

コンストラクターは新しいオブジェクトが作成されるときに実行されるメソッドで、デストラクターはオブジェクトが破棄されるときに実行されるメソッドです。

オブジェクトは、コード ページの実行後に明示的にまたは自動的に破棄できます。

<?php class Person{ //定义一个叫Person的类 public $name; //声明共有的属性:名字 public function say(){ //声明共有的方法:说话 echo 'saying'; } public function __construct(){ //固定的__construct声明构造函数 echo 'construct'; //在对象创建时输出 } public function __destruct(){ echo 'destruct'; //对象销毁时输出 } } $a =new Person(); //输出construct //待代码结束后输出 destruct ?>
ログイン後にコピー

this binding

this は現在バインドされているオブジェクトを返します。 PHP では、メソッド本体内のオブジェクトのプロパティを呼び出したい場合は、これを追加する必要があります。追加しないと、ローカル変数とみなされます。

<?php class Person{ //定义一个叫Person的类 public $name='color'; //声明共有的属性:名字 public function say(){ //声明共有的方法:说话 echo 'saying'; } public function __construct(){ echo $this->name; //输出color,如果是echo $name会报错,因为此时的$name未定义 } } $a=new Person(); ?>
ログイン後にコピー

この記事の著者: 著者: Luo Jianyuan

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート