※ ChatGPTを利用し、要約された質問です(原文:クラスで永続的な値を持たせたい)
クラスで永続的な値を持たせる方法
このQ&Aのポイント
親クラスが保持している値(ここではID)を維持してそれぞれの子クラスが利用できるようにしたいのですが、次のようなやり方だと維持できないようです。
どのようにすればクラスを利用する場合に永続的な値を持たせることができるのでしょうか?
IDが希望通りに維持できない問題が発生しています。
親クラスが保持している値(ここではID)を維持して
それぞれの子クラスが利用できるようにしたいのですが、
次のようなやり方だと維持できないようです。
どのようにすればクラスを利用する場合に永続的な値を
持たせることができるのでしょうか?
class oya {
var $ID = 0;
function setID($ID) { $this->ID = $ID; }
function getNextID() { return $this->ID + 1; }
}
class sub1 extends oya {
function sub1 () {$this->setID($this->getNextID());}
}
class sub2 extends oya {
function sub2 () {$this->setID($this->getNextID());}
}
$sub1 = new sub1();//←IDが1になる
$sub2 = new sub2();//←希望としてはIDが2になってほしいが、IDは1
お礼
ご返答ありがとうございます。 そのやり方でできました。ありがとうございます。