原标题:PHP 抽象类继承抽象类时的注意点

抽象类继承另外一个抽象类时,抽象类中,不能重写抽象父类的抽象方法。这样的用法,可以理解为对抽象类的扩展。

下面的例子,演示了一个抽象类继承自另外一个抽象类时,不需要重写其中的抽象方法。

1

2

3

4

5

6

7

8

9

10

11

12

abstract class User

{

protected $sal = 0;

abstract function getSal;

abstract function setSal($sal);

}

abstract class VipUser extends User {

}

?>

抽象类在被继承后,其中的抽象方法不能被重写。如果发生重写,系统会报错。

1

2

3

4

5

6

7

8

9

10

11

12

13

abstract class User

{

protected $sal = 0;

abstract function getSal;

abstract function setSal($sal);

}

abstract class VipUser extends User

{

abstract function setSal;

}

?>

程序运行结果:

1

Fatal error: Can't inherit abstract function User::setSal (previously declared abstract in VipUser) in E:\PHPProjects\test.php on line 14

结论: 抽象类继承抽象类,目的对抽象类的扩展。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

abstract class User

{

protected $sal = 0;

abstract function getSal;

abstract function setSal($sal);

}

abstract class VipUser extends User

{

protected $commision = 0;

static abstract function getCommision;

abstract function setCommision;

}

?>

上述代码就扩展了父类的方法返回搜狐,查看更多

责任编辑:

php 抽象类 继承,PHP 抽象类继承抽象类时的注意点相关推荐

  1. java 抽象封装多态_java面向对象(封装,继承,多态,抽象,接口的定义和实现)...

    1.封装 在面向对象程式设计方法中,封装(英语:Encapsulation)是指,一种将抽象性函式接口的实作细节部份包装.隐藏起来的方法. 封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定 ...

  2. 腾讯架构师讲解Java接口的继承与抽象类

    在实施接口中,我们利用interface语法,将interface从类定义中独立出来,构成一个主体.interface为类提供了接口规范. 在继承中,我们为了提高程序的可复用性,引入的继承机制.当时的 ...

  3. Java面向对象(继承、抽象类)

    面向对象 今日内容介绍 u 继承 u 抽象类 第1章 继承 1.1 继承的概念 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成 ...

  4. Java实验三 Java继承、抽象类与接口(13题)

    文章目录: 一:基本问题 二:说明下面说法是否正确 三:编写一个Java应用程序.设计一个汽车类Vehicle,包含的成员属性有:车轮个数wheels和车重weight.小车类Car是Vehicle的 ...

  5. 11.0_[Java 继承]-继承/重写/抽象类/抽象方法/ final 修饰符

    ################################################## 目录 继承 什么是继承 继承语法 super 关键字 如何使用继承 java.lang.Objec ...

  6. 13 面向对象-继承与抽象类

    第01天 java面向对象 今日内容介绍  继承  抽象类 第1章 继承 1.1 继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以 ...

  7. 创建具体的产品,并继承产品抽象类

    工厂方法模式定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个.工厂方法让类把实例化推迟到子类. PS:在设计模式中,"实现一个接口"泛指实现某个超类型(可以是类或接口)的 ...

  8. Java 继承 与 抽象类

    Java 继承 与 抽象类 继承 抽象类 继承 1.一个类 从另一个类中派生而来,就是继承. 2.继承也是面向对象语言的三大特征之一. 面向对象的语言都具有三大特征,分别是 封装,继承,多态. 3.什 ...

  9. 【Java语言基础】面向对象之封装、继承、抽象类、接口、多态综合知识习题及总结day11

    这几天逐渐被idea所折服,越来越喜欢这个优雅又强大的代码编辑器,有很多人说idea对很多初学者不友好,但是在我看来,只要你足够自律,并且英语不会太差,语法上关键的几个单词没什么大问题,idea对初学 ...

最新文章

  1. mybatis中mysql ON DUPLICATE KEY UPDATE写法
  2. debian配置集锦
  3. git push everything up to date问题解决
  4. WINCE6.0+S3C2443的启动过程---eboot5
  5. os sys hashlib
  6. 工作269:uni--客流分析优化
  7. 【LCS系列】最长公共子序列和最长公共子串
  8. Android已申请动态权限报错,Android 读取或者写入U盘时,报错:Permission denied
  9. php 的html头部代码,HTML 列表
  10. STK10与MATLAB互联
  11. Android Killer--安卓反编译工具
  12. 数据可视化~matplotlib阶梯图,直方图
  13. Arduino连接nRF24L01无线收发模块
  14. Android软键盘的全面解析,让你不再怕控件被遮盖
  15. 将电脑新建文本文档txt的默认编码从ANSI改为utf-8
  16. 不小心删了自己的注册表怎么办
  17. 《阿里云代码安全白皮书》5个维度应对3类代码安全问题
  18. 【WSN通信】基于注水算法实现宽带无线通信资源分配附matlab代码
  19. 《Unix-Linux编程实践教程》读书笔记(一)
  20. JAVA版B2B2C商城源码 多商家入驻商城系统 直播带货 新零售商城 o2o商城 电子商务 拼团商城

热门文章

  1. discuz(dz) SSO(单点,同歩,异步)登录 --转
  2. Javascript中的陷阱大集合【译】
  3. MyEclipse8.5/8.6不能安装ADT
  4. linux dmesg 格式化时间
  5. linux shell 获取字符串最后一个字符 去掉字符串最后一个字符 去掉末尾一个字符 去掉末尾两个字符
  6. linux ulimit命令 控制shell执行程序的资源
  7. linux 错误 too many open files 解决方案
  8. 2018几大主流的 UI/JS 前端框架
  9. 对多态变形引擎背后方法的概述
  10. 搭建Linux0.11系统环境