ホームページ > バックエンド開発 > PHPチュートリアル > PHPの詳しい解説(7)オブジェクト指向プログラミング_PHPチュートリアル

PHPの詳しい解説(7)オブジェクト指向プログラミング_PHPチュートリアル

WBOY
リリース: 2016-07-13 10:19:50
オリジナル
915 人が閲覧しました

PHPを解説する(7)オブジェクト指向プログラミング

1. クラスの宣言とオブジェクトの初期化

1.1 クラスでメンバー属性を宣言する場合: 修飾子をその前に置く必要があります。どの修飾子キーワードを使用するかがわかっている場合は、var

を使用しないでください。

var $color;

var $name = "張三"


1.2 ファイルには 1 つのクラスのみが保存され、ファイル名にはクラス名が含まれます (例: class name.class.php

)

person.class.php


1.3 new キーワードを使用してオブジェクトを作成します。オブジェクトが作成されると、メモリ内にスペースが割り当てられます。 $Object Reference = new class name;

$person = 新しい人

<?php
	class Person {
		var $name;      // Java: private String name;
		var $age;
		var $sex;
	
		function say() {
			echo $this->name;
		}
	}
	
	$p1 = new Person;   // Java: Person person = new Person;
	$p1->name = "lisi"; // Java: person.name = "lisi";
	$p1->say();         // Java: person.say();
?>
ログイン後にコピー
1.4 メモリ内のオブジェクトの割り当て

a. スタックメモリ: ローカル変数を保存します

b. ヒープメモリ: オブジェクトを保存します

c. 共有領域: 静的変数を格納します

d. コードセグメント: 保存方法など


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

2.1 コンストラクター:

a. コンストラクター メソッドは、オブジェクトの作成後に自動的に呼び出される最初のメソッドです

b. PHP4では、クラスと同じ名前のメソッドがコンストラクターメソッドです

c. PHP5 では、コンストラクターはマジック メソッド __construct() を使用することを選択し、この名前はすべてのクラスでコンストラクターを宣言するために使用されます

利点: クラス名を変更するときにコンストラクターメソッドを変更する必要がありません

d. コンストラクターの役割: メンバーのプロパティを初期化します

れーれー
2.2 デストラクター:

a. デストラクターは、オブジェクトが解放される前に自動的に呼び出される最後のメソッドを参照します

b. Java と同様に、PHP もリソースを解放するためにガベージ コレクターを使用しますが、PHP は呼び出しの直後に解放しますが、Java は解放しません。

c. デストラクターの役割: いくつかのリソースを閉じ、クリーンアップ作業を行い、マジック メソッド __destruct() を使用します

リーリー


2.3 魔法の方法

マジック メソッドは、特定の機能を完了するためにさまざまなタイミングで自動的に呼び出される、システムによって提供されるメソッドです。マジック メソッドが異なれば、呼び出し時間も異なります

魔法のメソッドは__

で始まります

__construct(); // コンストラクター

__destruct(); // デストラクター
__set();
__get();
__isset();
__unset();
__clone();
__call();
__sleep();
__weakup();
__toString()
__autoload();


http://www.bkjia.com/PHPjc/871200.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/871200.html技術記事 PHPの詳しい解説 (7) オブジェクト指向プログラミング 1. クラス宣言とオブジェクトの初期化 1.1 クラス内でメンバ属性を宣言する場合: 前に修飾子が必要 どれを使用すればよいかわからない場合は、var, if を使用します。 ...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート