php 类 抽象方法,「php抽象类和抽象方法」- 海风纷飞Blog
1、什么是抽象方法?
没有方法体{}的方法,必须使用abstract关键字修饰。这样的方法,我们称为抽象方法。
abstract function say(); //抽象方法
2、什么是抽象类?
使用abstract关键字修饰的类就是抽象类。
abstract class Person{}
3、抽象类的注意事项:
① 抽象类可以包含非抽象方法;
② 包含抽象方法的类必须是抽象类,抽象类并不一定必须包含抽象方法;
③ 抽象类,不能实例化。(抽象类中可能包含抽象方法,抽象方法没有方法体,实例化调用没有意义)
我们使用抽象类的目的,就是限制实例化!!!
4、子类继承抽象类,那么子类必须重写父类的所有抽象方法,除非,子类也是抽象类。
5、使用抽象类的作用?
① 限制实例化。(抽象类是一个不完整的类,里面的抽象方法没有方法体,所以不能实例化)
② 抽象类为子类的继承提供一种规范,子类继承一个抽象类,则必须包含并且实现抽象类中已定的抽象方法。
七、接口与多态
一接口
1、什么是接口?
接口是一种规范,提供了一组实现接口的类所必须实现的方法组合。
接口使用interface关键字声明;
interface Inter{}
2、接口中的所有方法,必须都是抽象方法。
接口中的抽象方法不需要也不能使用abstract修饰。
3、接口中不能声明变量,不能有属性,只能使用常量!!!
4、接口可以继承接口,使用extends关键字!
接口使用extends继承接口,可以实现多继承。
interface int1 extends Inter,Inter2{}
5、类可以实现接口,使用implements关键字!
类使用implements实现接口,可同时实现多个接口,多个接口间逗号分隔;
abstract class Person implements Inter,Inter2{}
一个类实现一个或多个接口,那么这个类,必须实现所有接口中的所有抽象方法!
除非,这个类是抽象类。
【接口&&抽象类区别】:
①声明方式上,接口使用interface关键字,抽象类使用abstract class。
②实现/继承方式上,一个类使用extends继承抽象类,使用implements实现接口。
③抽象类只能单继承,接口可以多实现。(接口extends接口)、多实现(类implements接口)
④抽象类中可以有非抽象方法,接口中只能有抽象方法,不能有费抽象方法。抽象类中的抽象方法必须使用abstract关键字修饰,接口中抽象方法不能带修饰词。
⑤抽象类是个类,可以有属性、变量;接口中只能有常量。
二多态
二、多态
1、一个类,被多个子类继承。
如果,这个类的某个方法,在多个子类中,表现出不同的功能,我们称这种行为为多态。
2、实现多态的必要途径:
① 子类继承父类;
② 子类重写父类方法;
③ 父类引用指向子类对象
php 类 抽象方法,「php抽象类和抽象方法」- 海风纷飞Blog相关推荐
- docker项目部署 php_「Docker部署PHP+Vue项目」- 海风纷飞Blog
创建Docker映射目录-- vue_demo # Demo项目 -- php_vue -- docker-compose.yaml -- nginx ---- apps ...
- centos7查看当前端口_「Centos7开放及查看端口」- 海风纷飞Blog
1.开放端口 firewall-cmd --zone=public --add-port=5432/tcp --permanent # 开放5432端口 firewall-cmd --zone=pu ...
- laravel services.php,「Laravel框架中使用Service模式」- 海风纷飞Blog
若将商业逻辑都写在controller,会造成controller肥大而难以维护,基于SOLID原则,我们应该使用Service模式辅助controller,将相关的商业逻辑封装在不同的service ...
- mysql支持事务的储存引擎_「mysql事务与mysql储存引擎」- 海风纷飞Blog
事务概念及存储引擎 1.0 为何要事务? 先来看一个场景,银行转账汇款: 李彦宏和周鸿祎天天打架,现在让李彦宏给周鸿祎转款1000 元 设计如下表 account表 编号(id)用户名(user)金额 ...
- 上海时间戳 php,「PHP的时间戳与具体时间转化」- 海风纷飞Blog
三个内置函数:time() //获取UNIX系统时间戳 mktime(hour,minute,second,month,day,year) //将指定时间转化为时间戳 date(时间格式,时间戳 ...
- java类和抽象方法课件_java抽象类和抽象方法(转载)
抽象类就是不能使用new方法进行实例化的类,即没有具体实例对象的类.抽象类有点类似"模板"的作用,目的是根据其格式来创建和修改新的类.对象不能由 抽象类直接创建,只可以通过抽象类派 ...
- abstract 类和 abstract 方法 (抽象类与抽象方法)
抽象一直以来都是人们所神往的艺术形式,这点从梵高,毕加索等艺术家的身上就可以看出.抽象所代表的是一种形式上的美感,颇有一种虚无缥缈只可意会不可言传的意味.但是JAVA中的抽象类与抽象方法相对而言就更加 ...
- java抽象方法声明_java抽象类和抽象方法
一.什么是抽象类和抽象方法 没有具体功能的实现,通过子类继承后重写方法来实现一定约束的类称之为抽象类,抽象类必须被abstract修饰.抽象方法就是只有方法声明,没有方法体的方法.抽象类的使用一般通过 ...
- java抽象方法实例_Java 抽象类和抽象方法实例
Linux参考文章 定义 Shape 类表示一般二维图形.Shape 具有抽象方法 area 和 perimeter,分别计算形状的面积和周长.试定义一些二维形状类(如矩形.三角形.圆形等),这些均为 ...
- 线程中这么调用类_「手撕面试官」谈谈你对JDK中Executor的理解?
欢迎关注头条号:Java小野猫 前言 随着当今处理器计算能力愈发强大,可用的核心数量越来越多,各个应用对其实现更高吞吐量的需求的不断增长,多线程 API 变得非常流行.在此背景下,Java自JDK1. ...
最新文章
- 书评 | 如何让开发中的各种文档变活?《活文档》阅读总结
- 华为p40论坛_花粉俱乐部网友:华为P40千万别上双扬声器,小米10方向错了
- 趣味图解编程算法,文科生都看懂了
- vue3与vue2的详细区别
- SAP Commerce Cloud Product Review 的添加逻辑
- dovecot mysql_dovecot+mysql
- Python面试题目--汇总
- 封装cookie.js、EventUtil.js、
- lsass.exe文件丢失,损坏
- 使用tcpdump,adb进行手机抓包
- php中svn上传项目直接访问不了,phpstorm8 通过svn导入项目后项目右键列表里没有subversion选项,无法提交和更新啊?...
- IHttphandler之“验证码”服务器控件
- gtest测试代码编写思想
- Swift - 使用UIScrollView实现页面滚动切换
- 车载BlueTooth通话机制原理及开发
- python pandas处理excel 统计数据_python使用pandas处理excel数据
- cpu、内存、硬盘之间的关系
- 这位毁誉参半的政治名嘴,竟然彻底改变了计算机编程
- python使用opencv模块画简单的图形
- 2014计算机考研分数线,2014年全国统计算机考研各个大学录取分数线汇总.doc
热门文章
- 明尼苏达大学 计算机学院 教授,美国明尼苏达大学David Du教授学术报告
- C# 如何合并和拆分PDF文件
- win7一点计算机就卡死,win7系统电脑经常卡住假死页面关不掉的解决方法
- java swing界面设计_java swing界面设计
- 紫外光谱分析的基本原理是什么
- 世界读书日 | 技术人不要错过的好书(IT前沿技术)
- 淘宝/京东/苏宁/拼多多/唯品会 返利消息批量转链思路
- python中逗号在print的作用_Python中逗号的三种作用
- java的jar是什么文件_jar是什么意思,jar文件怎么打开?
- 复杂网络中小世界网络的MATLAB实现