接口基础知识

简介: 接口基础知识

在Java中提供了一个关键字 interface ,用这个关键字我们可以定义出一个特殊的结构:接口


1. 接口不能创建对象

• 注意接口不能创建对象,接口是用来被实现的,实现接口的类被称为实现类


2.实现类写法格式

修饰符 class 实现类 implements 接口1,接口2,接口3,


一个类可以实现多个接口,实现类实现多个接口,就必须重写完全部接口的全部抽象方法,否则定义成抽象类。


3.接口中定义的成员变量都是常量,成员方法在接口中默认为抽象方法

public interface A {
    //接口中定义的成员变量都是常量
    //成员变量(常量)
    String name="hei";
 
    //成员方法(在接口中默认为抽象方法)
    void testa1();
    void testa2();
 
}

 4.使用接口有什么好处?

• 可以解决单继承的问题,通过接口,我们可以让一个类去继承一个父类的同时,去实现多个接口,这样可以拓展自己的功能


• 为什么要通过接口,来扩展自己的功能呢?

因为通过接口去找,通过你implements的接口,就可以显性的知道你是谁,从而就可以放心的把你当作谁来用了


• 一个类可以实现多个接口,同样,一个接口也可以被多个类实现。


这样做的好处是 我们的程序就可以面向接口编程了,这样就可以很方便的灵活切换各种业务实现了。


5.接口的注意事项

1.一个接口继承多个接口,如果多个接口中存在|方法签名|冲突,则此时不支持多继承,如下:

interface I{
void Test1();
}
 
interface J{
String Test1();
}

2.一个类实现多个接口,如果多个接口中存在方法冲突,则此时不支持多实现

class E implements I,J{}

3.一个类继承了父类,有同时实现了接口,接口和父类有同名的默认方法,实现类会优先使用父类

class X{} class E extends X implements A{}

注:先继承  再接口

4.

 interface A{}
    interface B{}
    interface C{}
//接口是多继承的
    interface D extends A,B,C{}
//实现类E只需要实现一个D,就可以拥有A,B,C,D的功能,便于实现类去实现
    class E implements D{}
目录
相关文章
|
对象存储 开发者
对象OSS生命周期(LifeCycle)管理功能|学习笔记
快速学习对象 OSS 生命周期(LifeCycle)管理功能
3072 0
对象OSS生命周期(LifeCycle)管理功能|学习笔记
|
小程序 前端开发 JavaScript
微信小程序全栈开发中的PWA技术应用
【4月更文挑战第12天】本文探讨了微信小程序全栈开发中PWA技术的应用,PWA结合Web的开放性和原生应用的性能,提供离线访问、后台运行、桌面图标和原生体验。开发者可利用Service Worker实现离线访问,Worker处理后台运行,Web App Manifest添加桌面图标,CSS和JavaScript提升原生体验。实践中需注意兼容性、性能优化和用户体验。PWA技术能提升小程序的性能和用户体验,助力开发者打造优质小程序。
307 0
|
存储 安全 芯片
封装之打线简介
介绍封装打线的原理,常用材料的优缺点,关键部件,wire bonding 过程,主要参数,线形,线长和主要测试方法。
13018 3
封装之打线简介
|
10月前
|
人工智能 开发框架 搜索推荐
今日 AI 开源|共 10 项| 复合 AI 模型,融合多个开源 AI 模型组合解决复杂推理问题
今日 AI 简报涵盖多项技术革新,包括多模态检索增强生成框架、高保真虚拟试穿、视频生成、生成式软件开发、上下文感知记忆管理等,展示了 AI 在多个领域的广泛应用和显著进步。
524 10
今日 AI 开源|共 10 项| 复合 AI 模型,融合多个开源 AI 模型组合解决复杂推理问题
|
10月前
|
负载均衡 应用服务中间件 nginx
基于Nginx和Consul构建自动发现的Docker服务架构——非常之详细
通过使用Nginx和Consul构建自动发现的Docker服务架构,可以显著提高服务的可用性、扩展性和管理效率。Consul实现了服务的自动注册与发现,而Nginx则通过动态配置实现了高效的反向代理与负载均衡。这种架构非常适合需要高可用性和弹性扩展的分布式系统。
196 3
|
11月前
|
存储 安全 文件存储
阿里云云存储:数字时代的数据保障与创新
在信息爆炸的数字时代,数据已经成为个人和企业不可或缺的重要资产。而如何高效、安全地存储和管理这些数据,成为各行各业共同关注的核心问题。阿里云作为全球领先的云计算服务提供商之一,其云存储服务不仅提供了强大的存储能力,还融合了多种创新技术和安全措施,满足了不同规模的企业需求。
442 0
|
负载均衡 网络协议 安全
DNS解析中的Anycast技术:原理与优势
【9月更文挑战第7天】在互联网体系中,域名系统(DNS)将域名转换为IP地址,但网络规模的扩张使DNS解析面临高效、稳定与安全挑战。Anycast技术应运而生,通过将同一IP地址分配给多个地理分布的服务器,并依据网络状况自动选择最近且负载低的服务器响应查询请求,提升了DNS解析速度与效率,实现负载均衡,缓解DDoS攻击,增强系统高可用性。此技术利用动态路由协议如BGP实现,未来在网络发展中将扮演重要角色。
911 0
|
11月前
|
关系型数据库 MySQL Linux
Navicat 连接 Windows、Linux系统下的MySQL 各种错误,修改密码。
使用Navicat连接Windows和Linux系统下的MySQL时可能遇到的四种错误及其解决方法,包括错误代码2003、1045和2013,以及如何修改MySQL密码。
1005 0
|
SQL Oracle 关系型数据库
Oracle21C + PLSQL Developer 15 + Oracle客户端21安装配置完整图文版
Oracle21C + PLSQL Developer 15 + Oracle客户端21安装配置完整图文版
1085 0
|
SQL 关系型数据库 MySQL
【MySQL核心】MySQL无法启动?批量恢复MySQL 物理文件-拯救即将跑路的你
【MySQL核心】MySQL无法启动?批量恢复MySQL 物理文件-拯救即将跑路的你