时间:2021-07-01 10:21:17 帮助过:19人阅读
三个类,a,b,c。在a中实例化c,b继承a。那么在b中怎么才能使用c的实例化对象。
a.php
require_once './c.php';
class a {
public $c;
public $test;
public function __construct() {
$this->test = "10";
$this->c1 = new c();
}
}
b.php
require_once './a.php';
class b extends a {
function b1() {
echo $this->test;
$this->c->c1();
}
}
$b = new b();
$b->b1();
c.php
class c {
public function c1() {
echo "this is c1 method";
}
}
执行b.php的结果:
三个类,a,b,c。在a中实例化c,b继承a。那么在b中怎么才能使用c的实例化对象。
a.php
require_once './c.php';
class a {
public $c;
public $test;
public function __construct() {
$this->test = "10";
$this->c1 = new c();
}
}
b.php
require_once './a.php';
class b extends a {
function b1() {
echo $this->test;
$this->c->c1();
}
}
$b = new b();
$b->b1();
c.php
class c {
public function c1() {
echo "this is c1 method";
}
}
执行b.php的结果:
`
public function __construct() {
$this->test = "10";
$this->c1 = new c();
}
`
你声明 a 类的时候,哪来的 c1变量
改成
`
public function __construct() {
$this->test = "10";
$this->c = new c();
}
`
就可以了
你没发现a.php中 $this->c1 = new c();写的是c1么
但是b.php中调用的属性是$this->c