> 백엔드 개발 > PHP 튜토리얼 > php父类实例化一个对象,在子类中还能使用这个对象吗

php父类实例化一个对象,在子类中还能使用这个对象吗

WBOY
풀어 주다: 2016-06-06 20:21:14
원래의
1228명이 탐색했습니다.

三个类,a,b,c。在a中实例化c,b继承a。那么在b中怎么才能使用c的实例化对象。

a.php

<code>require_once './c.php';

class a {

    public $c;
    public $test;

    public function __construct() {
        $this->test = "10";
        $this->c1 = new c();
    }

}</code>
로그인 후 복사
로그인 후 복사

b.php

<code>require_once './a.php';

class b extends a {

    function b1() {
        echo $this->test;
        $this->c->c1();
    }

}

$b = new b();
$b->b1();
</code>
로그인 후 복사
로그인 후 복사

c.php

<code>class c {

    public function c1() {
        echo "this is c1 method";
    }

}</code>
로그인 후 복사
로그인 후 복사

执行b.php的结果:
php父类实例化一个对象,在子类中还能使用这个对象吗

回复内容:

三个类,a,b,c。在a中实例化c,b继承a。那么在b中怎么才能使用c的实例化对象。

a.php

<code>require_once './c.php';

class a {

    public $c;
    public $test;

    public function __construct() {
        $this->test = "10";
        $this->c1 = new c();
    }

}</code>
로그인 후 복사
로그인 후 복사

b.php

<code>require_once './a.php';

class b extends a {

    function b1() {
        echo $this->test;
        $this->c->c1();
    }

}

$b = new b();
$b->b1();
</code>
로그인 후 복사
로그인 후 복사

c.php

<code>class c {

    public function c1() {
        echo "this is c1 method";
    }

}</code>
로그인 후 복사
로그인 후 복사

执行b.php的结果:
php父类实例化一个对象,在子类中还能使用这个对象吗

`

<code>public function __construct() {
    $this->test = "10";
    $this->c1 = new c();
}</code>
로그인 후 복사

`
你声明 a 类的时候,哪来的 c1变量
改成
`

<code>public function __construct() {
    $this->test = "10";
    $this->c = new c();
}</code>
로그인 후 복사

`
就可以了

你没发现a.php中 $this->c1 = new c();写的是c1么

但是b.php中调用的属性是$this->c

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿