> 백엔드 개발 > PHP 튜토리얼 > PHP 객체 지향 (3)

PHP 객체 지향 (3)

WBOY
풀어 주다: 2016-08-08 09:19:25
원래의
797명이 탐색했습니다.

1. 복습: 이전 글에서는 PHP의 상속, 속성, 정적 속성에 대해 알아보았습니다.

2. 이번 글에서는 PHP의 클래스 상수에 대해 알아보겠습니다. , 클래스 및 생성자 자동 로딩 함수 및 소멸자

3. 클래스 상수

<span> (1)常量的值始终不变,在定义和使用常量的时候不需要使用$符号
 (2)接口(interface)中也可以定义常量</span>
로그인 후 복사
<pre name="code">#定义和使用一个类常量
     class aclass{
         const a="a 是常量";
         function showA(){
             echo self::a;
         }
     }
     
     echo aclass::a; //结果:a 是常量
     echo aclass::showA(); //结果:a 是常量

     $classname="aclass";
     echo $classname::a; //结果:a 是常量

     $ac=new aclass();
     $ac->showA(); //结果:a 是常量
    
     //PHP 5.3.0之后支持
     $ac::a;
로그인 후 복사
로그인 후 복사
로그인 후 복사
4. 객체
<span></span><pre class="brush:php;toolbar:false"><span> (1)__autoload 函数,它会在试图使用尚未被定义的类时自动调用
 (2) 不需要使用过量的include
 (3)_autoload函数中抛出异常不能被catch捕获
 (4)如果使用phpCLI交互模式时,自动加载不存在</span>
로그인 후 복사
<pre name="code">  function __autoload($cName){
       require_once $cName . 'php';
   }
    $d=new demo_aclass();
    $d->say();
로그인 후 복사

5. 생성자
<span></span><pre class="brush:php;toolbar:false"><span> (1) __construct (args) 方法,实现构造函数
 (2)构造函数可以每次创建的时候,先调用此方法,完成初始化工作
 (3)子类中定义了构造函数不会自动调用父类构造函数
 (4)若执行父类构造函数,需要在子类中调用 parrent::_construct()</span>
로그인 후 복사
<span></span>
로그인 후 복사
로그인 후 복사
로그인 후 복사
<pre name="code">  class baseClass{

         function __construct(){
             echo "base construct";
         }
     }
     class subClass extends baseClass{
         function __construct(){
             parent::__construct();
             echo "sub construct";
         }
     }
     $bas=new baseClass();
     $sub=new subClass();
로그인 후 복사

<span></span>
로그인 후 복사
로그인 후 복사
로그인 후 복사
<span><span>6.析构函数</span></span>
로그인 후 복사
<span></span>
 (1)void__destruct(void)
 (2)析构函数会在某个对象的所有引用都删除或者当对象被显示销毁时执行
 (3)和构造函数一样,不会自动调用,当子类在析构函数中显示调用时执行
 (4)parent::__destruct()
로그인 후 복사
<span style="color:#46830d;"> </span> echo "<br>";
     class myClass{
         function __construct(){
             echo "construct 构造函数";
         }
         function __destruct(){
             echo "析构函数执行:".$this->name;
         }
     }
     $mc=new myClass();<span style="color:#46830d;">
</span>
로그인 후 복사

<span>下篇将学习php-面向对象: <spanbitstream vera sans line-height:23.2000007629395px>访问控制</spanbitstream></span>
로그인 후 복사
<span></span>
로그인 후 복사
로그인 후 복사
로그인 후 복사
로그인 후 복사
로그인 후 복사

저작권: 본 글은 해당 블로거의 실제 글이므로, 해당 블로거의 허락 없이 복제할 수 없습니다.

위 내용은 PHP 객체지향(3)에 대한 내용을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

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