面向对象(Object Oriented,OO)是软件开辟要领。面向对象的观点和运用已逾越了顺序设计和软件开辟,扩展到如数据库体系、交互式界面、运用组织、运用平台、分布式体系、收集治理组织、CAD手艺、人工智能等范畴。下面我们为人人引见一下php中类与对象的关联。
引荐教程:PHP视频教程
一、类和对象的关联
类的实体化效果是对象,而对象的笼统就是类。在开辟历程当中,我们一般都是先笼统(空想)出一个类,再用该类去建立对象(完成空想的内容)。在顺序中,直接运用的是我们(完成空想)的对象,而不是笼统(空想)的类。
二、面向对象和面向历程
1、什么是面向历程
面向历程就比如一个人 本身洗衣服、做饭,什么事情都是本身处理
2、什么是面向对象
面向对象就是那个人有了对象,让对象去洗衣服、做饭。
三、怎样笼统一个类
class 类名{ 成员属性: 姓名、性别、岁数、身高、体重 成员要领: 措辞、走路、进修、用饭、开车 }
一切的类都是从成员属性和成员要领这两方面去声明,属性和要领都是类中的成员,所以属性又叫做成员属性,要领又叫做成员要领
1、成员属性 -->特性
在对象中直接声明变量就称为成员属性,能够在类中声明多个成员变量,即对象中能够有多个成员属性
class Person{ var $name; //声明第一个成员属性,用于贮存人的名字 var age; //声明第一个成员属性,用于贮存人的岁数 var $sex; //声明第一个成员属性,用于贮存人的性别 }
2、成员要领 -->功用
class Person{ var $name; //声明第一个成员属性,用于贮存人的名字 var $age; //声明第一个成员属性,用于贮存人的岁数 var $sex; //声明第一个成员属性,用于贮存人的性别 function say(){ //声明第一个要领 echo '人在措辞'; //定义人措辞的功用 } function run(){ //声明第二个要领 echo '人在跑步'; //定义人跑步的功用 } function eat(){ //声明第三个要领 echo '人在用饭'; //定义人用饭的功用 } }
对象就是把相干的属性和要领组织在一起。个中成员属性和成员要领都是能够选的,能够只要成员属性,也能够只要成员要领,也能够没有成员。
四、实例化对象
一个类能够声明多个对象,让对象去接见成员属性和成员要领
class Person{ var $name; //声明第一个成员属性,用于贮存人的名字 var $age; //声明第一个成员属性,用于贮存人的岁数 var $sex; //声明第一个成员属性,用于贮存人的性别 function say(){ //声明第一个要领 echo '人在措辞'; //定义人措辞的功用 } function run(){ //声明第二个要领 echo '人在跑步'; //定义人跑步的功用 } function eat(){ //声明第三个要领 echo '人在用饭'; //定义人用饭的功用 } } // 实例化对象 $sqyy = new Person(); //成员属性赋值 $sqyy -> name = "伊川"; $sqyy -> sex = "男"; $sqyy -> age = 26; //接见对象中的成员要领 $sqyy->eat();
五、特别的对象援用 "$this"
上面的示例中,我们是实例化一个对象以后再给成员属性赋值和接见成员要领的。那末 $this也能够在成员要领中运用,代表的是当前的这个对象
成员要领挪用前的对象是谁,$this就代表谁
class Person{ var $name; function info(){ $this ->name = "SQYY"; } }
六、组织要领与析构要领
1、组织要领
组织要领是对象建立完成后第一个被对象自动挪用的要领,会初始化这个对象,当运用new关键字实例化对象时会自动触发。
<?php class Person{ //下面是声明人的成员属性,都是没有初始值的,在建立对象时,运用组织要领赋给初始值 var $name; //定义人的名字 var $sex; //定义人的性别 var $age; //定义人的岁数 function __construct($name="SQYY",$sex="男",$age=1){ $this -> name = $name; //在建立对象时,运用传入的参数$name为成员属性 $this->name赋初值 $this -> sex = $sex; //在建立对象时,运用传入的参数$sex为成员属性 $this->sex赋初值 $this -> age = $age; //在建立对象时,运用传入的参数$sex为成员属性 $this->age赋初值 } //下面声明人的成员要领 function say(){ echo "我的名字:" .$this ->name. " ,性别:" .$this -> sex ." 岁数" .$this ->age. "。<br>"; } } $person1 = new Person(); //建立对象$person1时会自动实行组织要领,默许传参 $person2 = new Person('张三'); //建立对象$person2时会自动实行组织要领,传入第一个参数,其他默许传参 $person3 = new Person('李四','男'); //建立对象$person3时会自动实行组织要领,传入前两个参数,其他默许传参 $person4 = new Person('王五','女','20'); //建立对象$person4时会自动实行组织要领,传入一切参数 $person1 ->say(); $person2 ->say(); $person3 ->say(); $person4 ->say(); ?>
运转效果
2、析构要领
对象在烧毁之前末了一个被对象自动挪用的要领,先建立 传入变量后烧毁
<?php header('Content-type:text/html;charset=utf-8'); // 定义一个汽车的类 class car{ // 成员属性 public $name; public $color; //组织要领 public function __construct($name,$color){ $this->name = $name; $this->color = $color; echo "你建立了".$this->name.'<br>'; } // 析构要领 public function __destruct(){ echo "你烧毁了".$this->name.'<br>'; } } // 实例化对象 $hanma = new car('悍马','粉色','H2'); $bmw = new car('宝马','赤色','X7'); $benchi = new car('奔驰','黑色','s600'); // unset($bmw); $bmw = '1111'; ?>
运转效果
假如我们不援用变量,建立完对象以后就会烧毁。
<?php header('Content-type:text/html;charset=utf-8'); // 定义一个汽车的类 class car{ // 成员属性 public $name; public $color; //组织要领 public function __construct($name,$color){ $this->name = $name; $this->color = $color; echo "你建立了".$this->name.'<br>'; } // 析构要领 public function __destruct(){ echo "你烧毁了".$this->name.'<br>'; } } // 实例化对象 new car('悍马','粉色','H2'); new car('宝马','赤色','X7'); new car('奔驰','黑色','s600'); ?>
运转效果
以上就是php类和对象的关联的细致内容,更多请关注ki4网别的相干文章!