>백엔드 개발 >PHP 튜토리얼 >PHP 객체지향의 회원입니다. PHP 객체지향에 대한 심층적인 지식이 있습니까?

PHP 객체지향의 회원입니다. PHP 객체지향에 대한 심층적인 지식이 있습니까?

WBOY
WBOY원래의
2016-07-29 08:53:271076검색

클래스 멤버:
1. 상수: const 상수 이름 = 값

2. 속성
2.1 정적 속성
2.2 인스턴스 속성

3. 3.1 정적 메소드
3.2 인스턴스 메소드
3.3 시공방법
3.4 파기방법

주의사항

①정적 속성은 클래스에 속하며, 이 클래스를 통해 생성된 객체는 이 속성을 공유합니다
②인스턴스 메소드에서는 정적 속성과 정적 메소드를 사용할 수 있습니다
③인스턴스 속성과 인스턴스 메소드는 정적 메소드에서 접근할 수 없습니다. 왜냐하면 정적 메소드는 클래스에 속하고 인스턴스 메소드는 객체에 속하기 때문입니다. 클래스가 존재하면 객체는 아직 새로운 것이 아닙니다.

<code><span><span><?php</span>header(<span>"content-type:text/html;charset=utf-8"</span>);

<span><span>class</span><span>C</span>{</span><span>const</span> PATH = <span>"C:/windows"</span>;<span>//类中不能使用 define定义常量</span><span>//静态属性</span><span>static</span><span>$count</span>  = <span>66</span>;<span>//等价于 static public $count = 66;</span><span>//实例属性</span><span>public</span><span>$name</span> = <span>"tom"</span>;<span>//等价于 var $name = "tom";</span><span>//默认的无参构造函数</span><span>//function __construct(){</span><span>//</span><span>//  echo "<br> __construct  无参构造方法被调用";</span><span>//}</span><span>//有参构造函数,一般用来类成员属性的初始化,php中一个类只能存在一个构造方法</span><span><span>function</span><span>__construct</span><span>(<span>$name</span>)</span>{</span><span>$this</span>->name = <span>$name</span>;
  <span>echo</span><span>"<br> __construct  有参构造方法被调用"</span>;
}

<span>//实例方法</span><span><span>function</span><span>instanceFun</span><span>()</span>{</span><span>echo</span><span>"<br>实例方法被调用"</span>;
  <span>echo</span><span>"<br>实例方法中访问常量:"</span>.<span>self</span>::PATH;
  <span>echo</span><span>"<br>实例方法中访问实例属性:{$this->name}"</span>;
  <span>echo</span><span>"<br>实例方法中访问静态属性:"</span>.<span>self</span>::<span>$count</span>;<span>//self就代表类本身</span><span>//实例方法中调用静态方法</span><span>self</span>::staticFun();

}

<span>//静态方法</span><span>static</span><span><span>function</span><span>staticFun</span><span>()</span>{</span><span>echo</span><span>"<br>静态方法被调用"</span>;
  <span>echo</span><span>"<br>静态方法中访问常量:"</span>.<span>self</span>::PATH;
  <span>echo</span><span>"<br>静态方法中访问静态属性:"</span>.<span>self</span>::<span>$count</span>;
  <span>//注意:静态方法中无法访问实例属性</span>}

<span>//析构方法,当对象被销毁的时候由系统去调用</span><span>//通常代码执行完,对象就会被销毁</span><span><span>function</span><span>__destruct</span><span>()</span>{</span><span>echo</span><span>"<br>对象 {$this->name} 被销毁"</span>;
}


}


<span>$object</span> = <span>new</span> C(<span>"哈利波特"</span>);
<span>$object</span>->instanceFun();
<span>echo</span><span>"<hr>"</span>;
C::staticFun();

<span>//下面代码会使$object指向的对象被销毁</span><span>//$object = null;</span><span>//$object = new C("秦始皇");;</span><span>//$object = 3;</span><span>//unset($object);</span><span>echo</span><span>"<br>程序最后一行代码。。。"</span>;</span></code>

面向对象,php面向对象教程,php面向对象实例,php面向对象视频,php面向对象编程实例,php面向对象编程,深入php面向对象,php是面向对象的吗,php 面向对象 多

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); }); 이상으로 객체지향과 PHP 내용을 포함하여 PHP의 객체지향 멤버들을 소개하였습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.