• 专注于网站建设,网络推广,关键词优化,SEO优化,专业的网站建设开发团队!
首页 > IT技术 > PHP > 内容

php面向对象编程之类的继承性

2015-06-10 21:37:29   来源:叶景网络
    什么是类的继承性?
    继承性是面向对象程序设计的重要特性之一,它是指建立一个新的派生类,从一个先前定义的类中继承属性和方法,而且可以重新定义或者加进新的属性和方法以建立类的层次或等级关系。简单地说继承性就是就是通过子类对父类进行功能扩展,继承而产生的类叫做子类,被继承的类叫做父类或超类。
    php中类的继承需要注意的地方
    1、一个类只能直接从另一个类中继承属性和方法,但一个类可以有多个子类。
    2、子类不能继承父类的私有属性和私有方法。
    3、在PHP5中类的方法可以被继承,类的构造函数也能被继承。
    php中类的继使用关键字"extends"实现多个类的单继承关系,下面我们通过一个实例来演示一下父类和子类之间的层次关系。
    首先我们来定义一个Person类作为父类,Person类具有人的基本属性如名字,性别和年龄以及说话和走路等行为。看代码:
    <?php
    class Person{
    public $name;
    public $age;
    public $sex;
    public function __construct($name="" ,$sex= "男",$age=25){
    $this ->name =$name;
    $this ->sex =$sex;
    $this ->age =$age;
    }
    public  function say(){
    echo $this ->name ."在说话<br>" ;
    }
    function run(){
    echo $this ->name ."在走路<br>" ;
    }
    }
    ?>
    上面的父类的成员属性和成员方法都使用"public"关键字来修饰,如果使用"private"修饰,那么如果子类继承时会导致严重错误。
    接下来我们定义一个学生类student作为父类Person的子类,同时给子类student新增一个学习(studdy)的行为,这样,作为子类的student
    在拥有父类Person的所有特性的同时还拥有了父类所没有的学习(studdy)行为.代码如下:
    class Student extends Person{
    function study(){
    echo $this ->name ."在学习<br>" ;
    }
    }
    $Student= new Student( "张三" ,"男" ,"25" );
    $Student->run();
    $Student->study();
    程序输出:
    张三在走路
    张三在学习
    再接下来,我们定义一个子类teacher,继续去继承Student类,同时又给teacher新增一个教学行为(teaching)和一个工资属性wage,这样teacher不仅拥有Person的所有成员属性和成员方法,而且还拥有Student类的成员方法,此外还拥有扩充的成员方法teaching和成员属性wage。代码如下:
    class Teacher extends Student{
    public $wage;
    public function teaching(){
    echo $this ->name ."是一位教师,他每月的工资是" . $this-> wage;
    }
    }
    $Teacher=new Teacher("张三","男","25");
    $Teacher->wage=2500;
    $Teacher->run();
    $Teacher->study();
    $Teacher->teaching();
    上面程序输出:
    张三在走路
    张三在学习
    张三是一位教师,他每月的工资是2500
    总结:在php面向对象编程中通过类的继承性,可以简化对象和类的创建工作量,增加了代码的重用性
叶景网络,网络推广,网站建设
特别推荐RECOMMEND
搜索引擎网站关键词seo优化的意义
视频推广怎么做
网站seo优化怎么做关键词排上首页?
SEO介绍什么叫搜索引擎网站关键词优化
seo优化怎样做提升关键词排名
热点图文Hot
PHP通过soap调用.net接口asmx文件 PHP通过soap调用.ne
PHP开发环境配置 PHP开发环境配置
wamp集成环境的虚拟域名配置方法 wamp集成环境的虚拟
wamp独立安装配置 wamp独立安装配置
关注排行RANKING
1

PHP通过soap调用.net接口asmx文件

PHP通过soap调用.net接口asmx文件 叶景网络(www cngxit com),致力于互联网品牌建设与网络营销,专业领域包括网...

2

PHP开发环境配置

PHP开发环境配置 下载PHP安装程序,并解压缩。(下载页面为http: www php net downloads php,下...

3

wamp集成环境的虚拟域名配置方法

wamp集成环境的虚拟域名配置方法 最近,发现身边很多人用wamp集成环境,这个虽然比较快捷,一步到位,但是只能访...

4

wamp独立安装配置

wamp独立安装配置 apache 中的 httpd conf LoadModule php5_module "D: lamp php5 php5apache2_2 dll " 加载模块并开启

5

php 获取今天明天昨天时间戳

php 获取今天明天昨天时间戳 叶景网络(www cngxit com),致力于互联网品牌建设与网络营销,专业领域包括网...

6

PHP获取服务器信息 MySql版本和浏览器信息

PHP获取服务器信息 MySql版本和浏览器信息 1、$_SESSION[ PHP_SELF ] -- 获取当前正在执行脚本的文件名 2...

7

smarty 截取字符串函数 truncate的用法

smarty 截取字符串函数 truncate的用法 smarty truncate 截取字符串,从字符串开始处截取某长度的字符,默认的长度为8...

8

php编程常用函数方法等

php编程常用函数方法等 叶景网络(www cngxit com),致力于互联网品牌建设与网络营销,专业领域包括网站...

9

如何让ThinkPHP的模板引擎达到最佳效率

如何让ThinkPHP的模板引擎达到最佳效率 默认情况下ThinkPHP框架系统默认使用的模板引擎是内置模板引擎。内置模板引擎支持模板文...