5. オブジェクトをインスタンス化する方法
オブジェクト指向プログラムの単位はオブジェクトであると述べましたが、オブジェクトはクラスを介してインスタンス化されます。
クラスを宣言します。最初のステップは、オブジェクトをインスタンス化することです。
クラスを定義した後、new キーワードを使用してオブジェクトを生成します。
コード スニペット
コードをコピー コードは次のとおりです。
$object name = new class name();
class person{
//以下は人物のメンバー属性です
var $name //人物の名前
var $sex;人の性別
var $ age; //人の年齢
//人のメンバーメソッドは次のとおりです
function Say(){
//この人が話すことができるメソッド
echo "この人は話しています";
} function run(){
//この人はどのように歩くことができます
echo "この人は歩いています";
}
$p1=新しい人();
$p3=新しい人();
$p1=新しい人(); 🎜>
このコードは、クラスを通じてインスタンス オブジェクトを生成するプロセスで、$p1 はインスタンス化するオブジェクトの名前です。同様に、$p2 と
$p3 もオブジェクトの名前です。クラスは複数のオブジェクトをインスタンス化できますが、それぞれのオブジェクトは独立しています。上記のコードは 3 人の人間と同等であり、それらはすべて人間であることを意味します。各
人は独自の名前、性別、年齢を持ち、クラスに反映されるメンバー属性とメンバー メソッドである限り、誰もがこれらの属性とメソッドを含みます。 。
class person{
//以下は人物のメンバー属性です
var $name; //人物の名前
var $sex; /その人の性別
var $age; //その人の年齢
//以下はその人のメンバーメソッドです
function Say(){ //この人が話せるメソッド
echo "この人は話しています" ;
}
function run(){ //この人はどのように歩くことができますか
echo "この人は歩いています" ;
}
$ p1=new Person() ; //インスタンスオブジェクトを作成 $p1
$p2=new Person() //インスタンスオブジェクトを作成 $p2
$p3=new Person();
//以下の 3 行は、$p1 オブジェクトの属性
$p1->name="Zhang San";
$p1->sex="male"; に値を割り当てます。
$p1->age=20;
//次の 3 行は $p1 オブジェクトのプロパティにアクセスします
echo "p1 オブジェクトの名前は次のとおりです: ".$p1-> ;name."
";
echo "p1 オブジェクトの名前。性別は次のとおりです。"
echo "年齢p1 オブジェクトは: ".$p1->age."
";
/ /次の 2 行は $p1 オブジェクトのメソッドにアクセスします
$p1->say();
$p1->run();
//次の 3 行は、$p2 オブジェクトのプロパティに値を割り当てます
$p2->name="李思"; $p2->sex="Women";
$p2->age=30;
//次の 3 行は $p2 オブジェクトのプロパティにアクセスします
echo " p2 オブジェクトは:".$p2->name."
"
echo "p2 オブジェクトの性別は:".$p2->sex."
";
echo "The age of the p2 object is: ".$p2->age."
";
//次の 2 行は $p2 オブジェクトにアクセスします。 Method
$p2-> Say();
$p2->run();
//次の 3 行は $p3 オブジェクトのプロパティに値を割り当てます
$p3->name= "王五";
$p3->sex="male";
$p3->age=40;
//次の 3 行は $p3 オブジェクトのプロパティにアクセスします
echo "p3 オブジェクトの名前は次のとおりです: ".$p3->name."
";
echo "p3 オブジェクトの性別は次のとおりです: ".$p3->sex."< ;br>";
echo "The age of the p3 object is: ".$p3->age."
";
//次の 2 行は、$p3 のメソッドにアクセスします。 object
$p3->say();
$p3->run();
オブジェクト内のメンバーはオブジェクト属性を使用する必要があり、オブジェクトにはメソッドの形式でアクセスします。
オブジェクト内のメンバーにアクセスする 2 番目の方法はありません。