接口
- 只有规范不能写自己的方法
- 因为没有自己的方法体,所以就不能实例化,所以就没有构造方法
- Implement实现接口的多继承,但是Java语言本身是单继承语言
Interface关键字修饰接口;Class关键字修饰类;abstract关键字修饰抽象类
接口意义
- 实现父子类锁不可实现的class多继承
- 实现资源访问的一致性,就好像USB接口一样,插那个U盘就是读那个U盘的内容
下图两个实现类,都实现了同一个接口,但是两个类里的具体方法并不一样,可以做不同的事情
接口的本质
- 就是契约如同与法律定制出来必须要遵守,
- 接口实现了约束和实现方法的分离
- 接口好比插座它允许不同的电器插入也就是允许多继承并没有规定谁来查但是它规定了来插的电器的插头形状也就是约束
定义接口
- interface关键字修饰
- 定义方法约束
- 无实现方法的方法体
定义接口方法
格式:<返回类型><方法名><参数表>;
- 接口中的方法默认修饰都为public abstract
- 他默认的部分会如果写上的话会变成灰色,相当于缺省。
- 你可以在方法参数表中定义参数
接口的实现类
注意,实现接口方法的是类,不是另一个方法
- 接口的实现类的类名一般以IMPL结尾,即implement。Implements关键词写的位置相当于在”继承“中的extend的位置。
- 要实现接口的实现类就必须重写接口的方法
- 一个类可以实现多个接口的方法,即充当多个接口的实现类
接口中的常量
在接口中可以定义一些常量默认修饰符public static Final--公开静态常量,但是一般没有这么干的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】Flutter适配HarmonyOS 5知识地图,实战解析+高频避坑指南
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 领域驱动设计实战:聚合根设计与领域模型实现
· 突破Excel百万数据导出瓶颈:全链路优化实战指南
· 如何把ASP.NET Core WebApi打造成Mcp Server
· Linux系列:如何用perf跟踪.NET程序的mmap泄露
· 日常问题排查-空闲一段时间再请求就超时
· 在 .NET 中使用 Sqids 快速的为数字 ID 披上神秘短串,轻松隐藏敏感数字!
· c#开发完整的Socks5代理客户端与服务端——客户端(已完结)
· c# 批量注入示例代码
· 【Uber 面试真题】SQL :每个星期连续5星评价最多的司机
· .net core workflow流程定义