类的继承和应用
继承关键字extends
class1 --extends--->class2 ----extends-->class3
依次被继承,class3拥有class1、class2所以功能和属性,避免方法和属性重名
class  pc1{
}
class pc2 extends pc1{
}  class pc2拥有class pc1的所有功能和属性

 class root{
function dayin(){
return "root print基类打印内容";
}
} class son extends root{
function dayin2(){
return "sonprint子类打印内容";
}
} $p = new son(); echo $p->dayin(); //输出结果为 : root print基类打印内容

重载:

方法重载我们也可以理解方法覆盖,在派生类里使用与基类方法
重名的方法名称执行重载
 
在上面例子中,子类为区别基类方法名,取名为dayin2。如果子类较多,方法名就会较多,可能会出现混乱。因此我们在建立子类时可以使用与基类相同的方法名。这样一来,基类方法就会被子类覆盖。这时我们可以通过使用基类名::基类方法名的方式调用原基类的方法,从而与子类同名方法区别。避免了新建方法带来的混乱。

class root{
function dayin(){
return "root print基类打印内容";
}
} class son extends root{
function dayin(){
return root::dayin()."sonprint子类打印内容";
}
} $p = new son(); echo $p->dayin();
 

PHP面向对象学习二的更多相关文章

  1. JavaScript之面向对象学习二(原型属性对象与in操作符)获取对象中所有属性的方法

    1.原型属性对象于in操作符之in单独使用 有两种方式使用in操作符:单独使用和在for-in循环中使用.在单独使用中,代码如下: function Person(){ } Person.protot ...

  2. js面向对象学习 - 对象概念及创建对象

    原文地址:js面向对象学习笔记 一.对象概念 对象是什么?对象是“无序属性的集合,其属性可以包括基本值,对象或者函数”.也就是一组名值对的无序集合. 对象的特性(不可直接访问),也就是属性包含两种,数 ...

  3. JavaScript之面向对象学习七(动态原型模式、寄生构造函数模式、稳妥构造函数模式创建自定义类型)

    一.动态原型模式 在面向对象学习六中的随笔中,了解到组合构造函数模式和原型模式创建的自定义类型可能最完善的!但是人无完人,代码亦是如此! 有其他oo语言经验的开发人员在看到独立的构造函数和原型时,很可 ...

  4. DjangoRestFramework学习二之序列化组件、视图组件 serializer modelserializer

      DjangoRestFramework学习二之序列化组件.视图组件   本节目录 一 序列化组件 二 视图组件 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 序列化组 ...

  5. Java面向对象学习目录

    Java面向对象学习目录 以下为面向对象学习目录,有待补充的部分,我还会再后续的学习过程中加以补充与修改~ 一.面向对象编程思想 二.Java类及类中成员 属性 方法 构造器 代码块 内部类 面向对象 ...

  6. day 88 DjangoRestFramework学习二之序列化组件、视图组件

    DjangoRestFramework学习二之序列化组件.视图组件   本节目录 一 序列化组件 二 视图组件 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 序列化组件 ...

  7. emberjs学习二(ember-data和localstorage_adapter)

    emberjs学习二(ember-data和localstorage_adapter) 准备工作 首先我们加入ember-data和ember-localstorage-adapter两个依赖项,使用 ...

  8. ReactJS入门学习二

    ReactJS入门学习二 阅读目录 React的背景和基本原理 理解React.render() 什么是JSX? 为什么要使用JSX? JSX的语法 如何在JSX中如何使用事件 如何在JSX中如何使用 ...

  9. TweenMax动画库学习(二)

    目录            TweenMax动画库学习(一)            TweenMax动画库学习(二)            TweenMax动画库学习(三)            Tw ...

随机推荐

  1. maven 错误: 程序包org.junit不存在

    该错误在入门例子中使用mvn clean test时出现该错误. 原因: 测试用例应该放在src/test/java/...路径下,我是放在了src/main/java/..路径下了. 因为没有遵守其 ...

  2. 几个国内速度最快的centos yum(更新源)

    转自:http://blog.itpub.net/15711267/viewspace-1068862/ 中国科技大学源 cd /etc/yum.repos.d mv CentOS-Base.repo ...

  3. HTML5——摒弃插件和前端框架的异步文件上传

    之前我从来没有体会到HTML5的便利,直到这次需要一个异步上传的功能功能.一开始我以为文件的一些声明必须为HTML5才管用,后来才知道添加了很多以前没有的标签,并可以直接播放视频,音频等.可以不再使用 ...

  4. Codeforces Beta Round #89 (Div. 2) E. Bertown roads(Tarjan、边双连通分量)

    题目链接:http://codeforces.com/problemset/problem/118/E 思路:首先要判断图是否是边双连通,这个Tarjan算法可以判断,若low[v] > dfn ...

  5. 认识B/S架构

    Browser/Server即浏览器/服务器模式. Web浏览器主要功能 1. 申请服务,包括服务器的Ip地址和文件 2. 从服务器上下载 3. 解析下载的文件 4. 用过http协议进行通信 Web ...

  6. checkbox全选和子选

    用jq: $(function() { var $subBox = $("input[name='subBox']"); $("#checkAll").clic ...

  7. 完善SQL农历转换函数

    -------------------------------------------------------------------- --  Author : 原著:          改编:ht ...

  8. Jmeter之JDBC请求(四)

    我们常用的Jmeter中的功能又HTTP请求.JDBC Request.SOAP/XML -RPC Request,这3个请求, 现在就为大家介绍下 什么是JDBC请求 首先,大家右键点击“测试计划” ...

  9. Android 退出Activity

    在一个Process或一个处理线程中退出Activity可以用context来退出,如下: ((Activity)context).finish(); Android程序有很多Activity,比如说 ...

  10. 系统表达式(z变换、DTFT、差分方程)之间的关系