细说php(七) 面向对象编程
Jun 13, 2016 am 09:26 AM细说php(七) 面向对象编程
一、类的声明与对象初始化
1.1 在类中声明成员属性时: 前面必须有修饰词, 当不知道使用那个时, 就使用var, 如果知道使用那一个修饰关键字, 就不使用var了
var $color;
var $name = "zhangsan"
1.2 一个文件只保存一个类, 文件名中包含类名, 如:类名.class.php
person.class.php
1.3 使用new关键字来创建对象, 创建了一个对象就在内存中分配一个空间 $对象引用 = new 类名;
$person = new Person
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
a. 栈内存: 存放局部变量
b. 堆内存: 存放对象
c. 共享区: 存放静态变量
d. 代码段: 存放方法等
二、构造函数和析构函数
2.1 构造函数:
a. 构造方法是对象创建完成之后, 第一个自动调用的方法
b. 在PHP4中, 和类同名的方法就是构造方法
c. 在PHP5中, 构造方法选择使用魔术方法 __construct() , 所有类中声明构造方法都使用这个名称
优点: 在改变类名时构造方法不用改变
d. 构造方法的作用: 为成员属性初始化
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
2.2 析构函数:
a. 析构函数是指当对象被释放之前最后一个自动调用的方法
b. 和Java一样, PHP也使用垃圾回收器释放资源, 只不过PHP调用后马上回收, 而Java不是.
c. 析构函数的作用: 关闭一些资源, 做一些清理工作, 使用魔术方法 __destruct()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
|
魔术方法是系统给我们提供好的, 在不同时刻为完成某一功能而自动调用的方法, 不同的魔术方法有不同的调用时机
魔术方法以 __ 开头
__construct(); // 构造函数
__destruct(); // 析构函数
__set();
__get();
__isset();
__unset();
__clone();
__call();
__sleep();
__weakup();
__toString()
__autoload();

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tukar tatasusunan atau objek kepada rentetan JSON menggunakan fungsi json_encode() PHP

Penerokaan kod sumber: Bagaimanakah objek dipanggil dalam Python?

Bagaimana untuk menukar tatasusunan hasil pertanyaan MySQL kepada objek?

Gunakan fungsi __contains__() Python untuk menentukan operasi pembendungan objek

Gunakan fungsi __le__() Python untuk menentukan perbandingan kurang daripada atau sama bagi dua objek

Apakah perbezaan antara tatasusunan dan objek dalam PHP?

Penjelasan terperinci tentang 5 kaedah traversal gelung objek Javascript
