我对OOP有一些抽象的知识,但这是我第一次尝试用PHP编写一些OOP。我想创建一个类,该类将具有一些来自构造的属性,但有些属性会动态变化。
我对所有的术语(对象,类,方法等)有些困惑,所以我不知道确切要搜索什么。我在下面做了一个简化的例子。
这是我声明我的类的地方,它将在构造中接受2个参数并计算第三个参数,即较高的数字(请忽略我不检查类型)。
class test{
public function __construct($p1, $p2){
$this->p1 = $p1;
$this->p2 = $p2;
$this->p_max = max(array($this->p1, $this->p2));
}
}
然后,我初始化对象并检查p_max:
$test = new test(1,2);
echo $test->p_max; // Prints 2
但是,如果我更改p1和p2,则p_max不会更改:
$test->p1 = 3;
$test->p2 = 4;
echo $test->p_max; // Prints 2 (I want 4)
我应该如何在类中定义p_max以在每次更改p1或p2时进行更新?有没有一种方法可以不将p_max转换为方法?
温温酱
交互式爱情