当前位置:网站首页>抽象类和接口 基本知识点复习
抽象类和接口 基本知识点复习
2022-08-02 14:14:00 【零雨z】
抽象类是普通类的超集,只是比普通类多了一些抽象方法而已,现实生活中,抽象类很多(无法映射到具体的对象的类),比如说人类,动物类
上图注意一下,抽象类是没有方法体的 即:{}
1.抽象类无法直接实例化对象,子类继承抽象类,必须覆写抽象类中的所有方法(子类是普通类)
2.利用abstract关键字来定义抽象类与抽象方法,抽象方法所在的类一定是抽象类,子类必须覆写所有抽象方法。
3.抽象类必须有子类,final 和 abstract 不能同时出现
抽象类最大的意义就是强制要求子类覆写所有抽象方法,保证多态的正确运行。如果子类也是抽象类,就不用覆写所有抽象方法.
抽象类的局限:设计与实现比较复杂。
1.子类继承抽象类,仍然满足is a 原则。
2.抽象类仍然是单继承局限,一个类只能继承一个抽象类。
接口
1.接口中只有public权限,接口中只有全局常量和抽象方法,在接口内部abstract,static,final,public都可以沈略掉!!!
2.接口的多实现,接口没有单继承限制,子类可以同时实现多个父接口,子类在实现多个父接口时,使用,分隔。子类必须要实现父接口中的所有抽象方法。
3.接口仍然不能直接实例化对象,必须通过子接口来用上转型。
4.子类若同时继承父亲,实现接口
请先使用extends继承一个父亲,而后使用implemts实现多个接口。子类实现接口没有is a 原则
is 原则只是描述类之间的继承
接口的使用(用法):一般分为两种
第一个是定义某种标准规范,例如定义USB类,符合USB的鼠标键盘都可以使用。
第二个是表示一种能力或者行为,拿动物举例,游泳接口,奔跑接口,飞翔接口,继承表示具有相关的能力。
写给自己:看到这里记得复习特殊类(String Object 包装类)List,Set,Map, 异常,内部类
边栏推荐
猜你喜欢
Apache ShardingSphere 5.1.2 发布|全新驱动 API + 云原生部署,打造高性能数据网关...
Class template/assignment operations and add operations
【软件测试】selenium自动化测试2
The dynamic planning theory
极简式 Unity 获取 bilibili 直播弹幕、SC、上舰、礼物等 插件
仿真结果的格式&定制
tcp transparent proxy (IP_TRANSPARENT)
排序方法汇总(C语言)
idea同时修改相同单词
【Solidity智能合约基础】-- 基础运算与底层位运算
随机推荐
EastWave:垂直腔表面激光器
unity-shader(入门)
C#高级教程
"Array" look-up table method (leap year)
SkyWalking Agent数据采集和上报原理浅析
Redis 学习part one
Server-Sent Events 一种轻量级的Push方式
【软件测试】selenium自动化测试2
Windows下mysql服务无法启动:服务没有报告任何错误。
基类和派生类的关系【继承】/多态和虚函数/【继承和多态】抽象类和简单工厂
LITESTAR 4D应用:室内植物照明模拟
分布式一致性协议-Raft
分布式一致性协议-Paxos
三方对接接口数据安全问题
OpenPose 命令行说明
HCIE学习记录——OSI参考模型
Run ns3 with multiple processes
【Solidity智能合约基础】-- 基础运算与底层位运算
Vert.x web 接收请求时反序列化对象 Failed to decode 如何解决?
Oauth2.0 security (take WeChat authorized login as an example)