您的位置 首页 php

PHP学习第十四课:类的简易实现

感谢关注PHP学习坊,文章内容由PHP学习坊收集整理,如有错误或者疏漏之处,欢迎在评论区指出,也欢迎大家积极评论转发。小编需要来自你们订阅、评论的支持,吐槽也好,支持也罢,欢迎大家积极评论。

今天的内容,是针对昨天的内容进行一次简单的代码实现

16ce00035659ec7eaddb

父类

16ce0003569f3d5f76de

子类

<?php

/**

* Class Person 基础父类

*/

class Person

{

public $age; //年龄

public $name; //姓名

public $height; //身高

/**

* @desc 说 方法

*/

public function say()

{

return “我会说话”;

}

public function sing()

{

return “我会唱歌”;

}

}

class FengGong extends Person

{

public function say()

{

$parent = parent::say(); // 实现父类的say方法

//下面是自己独有的内容

return $parent.” 我不仅会说,而且能说相声\n”;

}

}

$person = new FengGong();

//为各个成员变量赋值

$person->age = 20;

$person->name = ‘冯巩’;

$person->height = 180;

echo “我叫 {$person->name} , 我今年 {$person->age} , 我的身高 {$person->height} , 我的能力 {$person->say()}”;

?>

有兴趣的朋友可以手动敲一遍代码,自己体会下。但是大家可能注意到一点,对于成员变量,用的都是 public ,要使用private呢?这就需要提供一组set 和get方法。具体代码如下:

<?php

/**

* Created by PhpStorm.

* User: PHP学习坊

* Date: 17/2/26

* Time: 下午6:57

*/

/**

* Class Person 基础父类

*/

class Person

{

private $age; //年龄

private $name; //姓名

private $height; //身高

/**

* @desc 说 方法

*/

public function say()

{

return “我会说话”;

}

public function sing()

{

return “我会唱歌”;

}

public function set( $property , $value )

{

$this->{$property} = $value;

}

public function get( $property )

{

return $this->{$property};

}

}

class FengGong extends Person

{

public function say()

{

$parent = parent::say(); // 实现父类的say方法

//下面是自己独有的内容

return $parent.” 我不仅会说,而且能说相声\n”;

}

}

$person = new FengGong();

//为各个成员变量赋值

/*

* 这时候这样赋值是会报错的,同理之前的访问也会报错

* $person->age = 20;

* $person->name = ‘冯巩’;

* $person->height = 180;

*/

$property = array(

‘age’ => 20,

‘name’ => ‘冯巩’,

‘height’=> 180

);

foreach ( $property as $key => $value ) {

$person->set( $key , $value );

}

echo “我叫 {$person->get(‘name’)} , 我今年 {$person->get( ‘age’ )} , 我的身高 {$person->get(‘height’)} , 我的能力 {$person->say()}”;

那可能会有朋友会说,何必设置成私有,还要提供一组方法,来设置值与获取值?其实这样做的好处就是,防止变量的值被肆意的乱改,能有效地控制访问权限。

以上就是今天的内容,谢谢大家。

文章来源:智云一二三科技

文章标题:PHP学习第十四课:类的简易实现

文章地址:https://www.zhihuclub.com/40112.shtml

关于作者: 智云科技

热门文章

网站地图