2017.1.18

面向对象的三大特性

一,封装

1.将成员变量变为私有

2.做一个成员方法来间接访问

3.在该方法里面加限制条件

目的:为了使类更加安全

 class Ren

{private $age;//18-50之间

function setAge($n)

{if($n>=18&& $n<=50)

$this_>age =$n;}

}//if的作用就是封装,age不是在18-50之间的就没办法赋值

function getAge()

{reurn $this->age;

}

魔术方法,给变量赋值:

class Ren

{private $age;

function__set($n,$v)

{

$this->$n=$v}

$r=new Ren();

$r->age=20;//可以给变量赋值了!一个方法可以给多个方法赋值。

判断就是用if  else

魔术方法,取变量值

function __get($n){

renturn $this->$n;

}

二,继承

子类可以继承父类的一切

特点:单继承

 

class Ren

public $name;

class China extends Ren//China就是Ren的子类{

//重写 override

functions Run(){

parent::Run();//调用父类的方法

echo"中国人跑步";}

}

三,多态(在php中是显示不出来的)

//当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,该引用在调用方法的时候表现出的不同

 

posted @ 2017-04-18 16:20  雪花飘刂  阅读(130)  评论(0)    收藏  举报