深入了解PHP类Class的概念

日常环境由无数实体组成:植物、人群、交通工具、食物……实在是太多了,光是把它们列出来都要花上几个小时的时间。每个实体都由一组性质和行为来定义。例如,一个交通工具可以定义有颜色、轮胎数、制造商、型号和容量等性质,并定义有停止、前进、转弯和鸣笛等行为。在OOP术语中,实体的性质和行为的具体定义称为类(class)。

类的定义与创建

类是具有相同属性和服务的一组对象的集合。它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和方法两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性说明和方法说明两个主要部分。

类用于表示要在应用程序中处理的实际事物。例如,假设要创建一个管理公共图书馆的应用程序,可能就要包括一些类来表示书籍、杂志、员工、特殊事件、顾客以及需要管理的其他事物。每个实体都包含一组性质和行为,在OOP中分别称为字段(field)和方法(method),它们定义了实体。PHP 中一般的类创建语法如下:

1 class Class_Name
2 {
3     // 字段声明
4     // 方法声明
5 }

创建一个类:

01 class Employee
02 {
03     private $name;
04     private $title;
05     protected $wage;
06      
07     protected function clockIn() {
08         echo "Member $this->name clocked in at ".date("h:i:s");
09     }
10      
11     protected function clockOut() {
12         echo "Member $this->name clocked out at ".date("h:i:s");
13     }
14 }

这个类名为Employee,定义了3个字段:name、title和wage,还定义了两个方法:clockIn(签到)和clockOut(签离)。

类的应用

一个定义了属性和方法的类就是一个完整的类了,可以在一个类里面包含一个完整的处理逻辑。使用 new 关键字来实例化一个对象以便应用类里面的逻辑。可以同时实例化多个对象。

类的实例化:

1 object = new class_name();

实例化一个对象后,使用 -> 操作符来访问对象的成员属性和方法。比如:

1 object->var_name;
2 object->function_name;

如果要在定义的类里面访问成员的属性或者方法,可以使用伪变量 $this 。$this 用于表示当前对象或对象本身 。

01 <?php
02 class Person {
03     // 人的成员属性
04     var $name;  //人的名字
05     var $age;   //人的年龄
06  
07     //人的成员 say() 方法
08     function say() {
09         echo "我的名字叫:".$this->name."<br />";
10         echo "我的年龄是:".$this->age;
11     }
12 }   
13 //类定义结束
14  
15 $p1 = new Person();     //实例化一个对象
16 $p1->name = "Gonn";      //给 $p1 对象属性赋值
17 $p1->age = 25;
18 $p1->say();              //调用对象中的 say()方法
19 ?>

程序运行结果:

1 我的名字叫:Gonn
2 我的年龄是:25

zgguan.com(it学习网) — 提供最好的 XHTML教程DIV+CSS教程JavaScript教程PHP教程ThinkPHP教程