在学习PHP面向对象时,都会在抽象类与接口上迷惑,作用差不多为什么还那么容易混淆,何不留一去一?但是事实上两者的区别还是很大的,如果能够很好地运用PHP的两个方法,面向对象的程序设计将会更加合理、清晰高效。

  • 对接口的使用方式是通过关键字implements来实现的,而对于抽象类的操作是使用类继承的关键字exotends实现的,使用时要特别注意。
  • 接口没有数据成员,但是抽象类有数据成员,抽象类可以实现数据的封装。
  • 接口没有构造函数,抽象类可以有构造函数。
  • 接口中的方法都是public类型,而抽象类中的方法可以使用private、protected或public来修饰。
  • 一个类可以同时实现多个接口,但是只能实现一个抽象类。
  •  
  • 相同点:函数体内不能写任何东西,连两个大括号都不能写!!!如:function getName();这样就行了

面试的时候也许会用得到,记下留好,没准就能用到

转载于:https://www.cnblogs.com/zcbing/p/6542416.html

PHP高级——抽象类与接口的区别相关推荐

  1. PHP高级——抽象类与接口的区别(转)

    在学习PHP面向对象时,都会在抽象类与接口上迷惑,作用差不多为什么还那么容易混淆,何不留一去一?但是事实上两者的区别还是很大的,如果能够很好地运用PHP的两个方法,面向对象的程序设计将会更加合理.清晰 ...

  2. 不允许使用抽象类类型的对象怎么办_Java基础——面试官:你来说说抽象类和接口的区别...

    无论你是新手Java 程序员,还是老手程序员,可能在实际开发中很少自己写抽象类. 但是抽象类在某些时候的功能很强大,可以保证子类中百分百实现父类中的方法 -- 普通类的弊端,消除子类的冗余代码 -- ...

  3. php 抽象类 接口 区别,PHP中抽象类、接口的区别与选择分析

    本文实例分析了PHP中抽象类.接口的区别与选择.分享给大家供大家参考,具体如下: 区别: 1.对接口的使用是通过关键字implements.对抽象类的使用是通过关键字extends.当然接口也可以通过 ...

  4. C#中抽象类和接口的区别

    一.抽象类:       抽象类是特殊的类,只是不能被实例化:除此以外,具有类的其他特性:重要的是抽象类可以包括抽象方法,这是普通类所不能的.抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆 ...

  5. C#中抽象类和接口的区别与使用

    一.抽象类: 抽象类是特殊的类,只是不能被实例化:除此以外,具有类的其他特性:重要的是抽象类可以包括抽象方法,这是普通类所不能的.抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们.另外 ...

  6. 1.13 抽象类和接口的区别

    接口是一种特殊的抽象类,接口和抽象类的渊源颇深,有很大的相似之处,所以在选择使用谁的问题上很容易迷糊. 1)抽象类 在 Java 中,被关键字 abstract 修饰的类称为抽象类:被 abstrac ...

  7. C#抽象类与接口的区别【转】

    C#抽象类与接口的区别[转] 一.抽象类:      抽象类是特殊的类,只是不能被实例化(可以用派生类实例化基类对象):除此以外,具有类的其他特性:重要的是抽象类可以包括抽象方法(当然它可以有普通方法 ...

  8. 问题小结(二)——maven的核心功能、面向对象编程和面向接口编程的区别、抽象类和接口的区别等

    文章目录 1. Java创建对象有哪四种方式? 2. 什么是maven?maven的核心功能有哪些? 3. 什么是MVC?说说分层的好处. 4. Spring的两大核心技术是什么? 5. 什么是IOC ...

  9. Java11-day02【多态(成员访问、多态转型、内存图解)、抽象类(成员特点)、接口(成员特点)、类和接口的关系、抽象类和接口的区别、综合案例】

    视频+资料(工程源码.笔记)[链接:https://pan.baidu.com/s/1MdFNUADVSFf-lVw3SJRvtg   提取码:zjxs] Java基础--学习笔记(零起点打开java ...

最新文章

  1. consul安装配置使用
  2. 预测技术智能化,机器学习是第一功臣
  3. leetcode算法题--删除一次得到子数组最大和★
  4. Win Srv 2012 R2 RDS移动RDS客户端
  5. cURL在Web渗透测试中的应用
  6. 【 FZU - 2214 】Knapsack problem(逆向0-1背包)
  7. Rekit Studio简介:用于React和Redux开发的真实IDE
  8. 有没有五金产品展开计算机软件,拆单软件功能介绍
  9. Unity使用ARCore开发AR程序
  10. 在网页中使用嵌入字体
  11. CSDN不友好的收藏夹
  12. SEBASTIEN KWOK 2022春夏系列新品上市
  13. bootmgr快速修复win7_如何使用老毛桃winpe进行磁盘分区引导修复?
  14. mpc5125 开发板 基于 核心板
  15. 外文翻译原文附在后面_外文翻译及外文原文(参考格式).doc
  16. 2018CCPC吉林赛区 题解
  17. 稀疏表示和字典学习的简单理解
  18. 综合面试(hr面)常问的问题
  19. powershell 下汉字转拼音
  20. 微信公众号开发关键字匹配回复随机内容

热门文章

  1. 介绍计算机硬件的英语作文带翻译,介绍我家的英语作文(带翻译)
  2. python自动化办公第二节_自动化测试第二节-jmeter关联+抓包+python基础
  3. 宝马计算机考试答案,宝马BMW旅程电脑功能键的说明与测试程序
  4. python的linux电脑上图标不见了怎么办_电脑桌面及桌面图标消失不见怎么找回?
  5. Java基础知识复习(一)
  6. 替换某个字符串_Schema技术(四)-字符串数据类型
  7. oracle ctl文件7c1b,批量生成控制文件,用sqlldr自动导入多个表的数据
  8. python自定义函数找最大值_python – 查找用户定义函数的局部最大值和最小值
  9. markdown如何设置图片大小_Markdown编辑知乎文章的完全攻略
  10. 原生ajax如何执行,原生ajax调用数据实例讲解