JavaSE——面向对象高级二(4/4)-接口的其他细节-三个新方法(默认方法、私有方法、静态方法),接口的多继承

简介: JavaSE——面向对象高级二(4/4)-接口的其他细节-三个新方法(默认方法、私有方法、静态方法),接口的多继承

接口的其他细节——第一点JDK8以后是新增的三个接口内的方法,第二是接口的多继承,最后是了解一下接口使用时的注意事项。


三个新方法

注意:接口内的实例方法因为是对象的方法,而接口本身不能创建对象,所以需要通过实现类的对象来访问。

默认方法

  • 使用default修饰的接口内方法,且默认会被public修饰

可以拥有方法体,在接口内也相当于实例方法。

例如:

package user.interfaceDemo;
 
public interface A {
    default void test1(){ //等同于 public default void test1(){}
        System.out.println("默认方法");
    }
}

私有方法

  • 必须使用private修饰的方法(JDK 8 开始才支持的)

与默认方法一样,也可以拥有方法体,但不能被外部访问,只能在内部进行访问。

例如:

package user.interfaceDemo;
 
public interface A {
    default void test1(){ //等同于 public default void test1(){}
        System.out.println("==默认方法==");
        test2();
    }
 
    private void test2(){
        System.out.println("==私有方法==");
    }
}

静态方法

  • 必须使用static修饰的方法,默认会被public修饰
package user.interfaceDemo;
 
public interface A {
    static void test3(){
        System.out.println("==静态方法==");
    }
}

JDK8开始,接口中为啥要新增这些方法?


  • 增强接口的能力,更便于项目的扩展和维护
  • 例如某些情况下,一个接口被很多的类实现了,此时给接口添加一个新方法的话,所有实现了这个接口的类都要去一个一个地重写这个新方法;需求中如果只是单独的一个类或少数的类需要重写该方法,那么就可以使用这些新方法。

接口的多继承

  • 一个接口可以同时继承多个接口
public interface C extends B,A{
}

接口多继承的作用

  • 便于实现类去实现

例如:

interface B{
    void test1();
}
interface C{
    void test2();
}
interface D{}
interface E extends B,C{}
 
class c implements E{
 
    @Override
    public void test1() {
        
    }
 
    @Override
    public void test2() {
 
    }
}

使用接口的注意事项【了解】

  1. 一个接口继承多个接口,如果多个接口中存在方法签名冲突,则此时不支持多继承。
  2. 一个类实现多个接口,如果多个接口中存在方法签名冲突,则此时不支持多实现。
  3. 一个类继承了父类,又同时实现了接口,父类中和接口中有同名的默认方法,实现类会优先用父类的。
  4. 一个类实现了多个接口,多个接口中存在同名的默认方法,可以不冲突,这个类重写该方法即可。

END



目录
相关文章
|
机器学习/深度学习 TensorFlow 算法框架/工具
使用Python实现深度学习模型:智能质量检测与控制
使用Python实现深度学习模型:智能质量检测与控制 【10月更文挑战第8天】
948 62
使用Python实现深度学习模型:智能质量检测与控制
|
搜索推荐 数据可视化 数据挖掘
点晴OA系统:用户体验至上,操作简单易上手
在数字化转型的浪潮中,企业选择办公自动化(OA)系统时,除了关注功能强大与否,更看重系统的用户体验。一个操作复杂、学习成本高的系统,不仅会降低员工的工作效率,还可能影响企业的整体运营。点晴OA系统以“用户体验至上”为核心理念,致力于打造操作简单、易上手的办公平台,帮助企业快速实现高效办公。
226 1
|
存储 关系型数据库 MySQL
MySQL基础入门:数据库操作全攻略
MySQL基础入门:数据库操作全攻略
1086 0
|
机器学习/深度学习 存储 人工智能
程序员必备的一些数学基础知识
作为一个标准的程序员,应该有一些基本的数学素养,尤其现在很多人在学习人工智能相关知识,想抓住一波人工智能的机会。很多程序员可能连这样一些基础的数学问题都回答不上来。以下文章会给你答案。
424 0
程序员必备的一些数学基础知识
|
27天前
|
人工智能 自然语言处理 Shell
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
本教程指导用户在开源AI助手Clawdbot中集成阿里云百炼API,涵盖安装Clawdbot、获取百炼API Key、配置环境变量与模型参数、验证调用等完整流程,支持Qwen3-max thinking (Qwen3-Max-2026-01-23)/Qwen - Plus等主流模型,助力本地化智能自动化。
37167 150
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
|
10天前
|
人工智能 自然语言处理 监控
OpenClaw skills重构量化交易逻辑:部署+AI全自动炒股指南(2026终极版)
2026年,AI Agent领域最震撼的突破来自OpenClaw(原Clawdbot)——这个能自主规划、执行任务的智能体,用50美元启动资金创造了48小时滚雪球至2980美元的奇迹,收益率高达5860%。其核心逻辑堪称教科书级:每10分钟扫描Polymarket近千个预测市场,借助Claude API深度推理,交叉验证NOAA天气数据、体育伤病报告、加密货币链上情绪等多维度信息,捕捉8%以上的定价偏差,再通过凯利准则将单仓位严格控制在总资金6%以内,实现低风险高频套利。
4545 34
|
5天前
|
存储 人工智能 负载均衡
阿里云OpenClaw多Agent实战宝典:从极速部署到AI团队搭建,一个人=一支高效军团
在AI自动化时代,单一Agent的“全能模式”早已无法满足复杂任务需求——记忆臃肿导致响应迟缓、上下文污染引发逻辑冲突、无关信息加载造成Token浪费,这些痛点让OpenClaw的潜力大打折扣。而多Agent架构的出现,彻底改变了这一现状:通过“单Gateway+多分身”模式,让一个Bot在不同场景下切换独立“大脑”,如同组建一支分工明确的AI团队,实现创意、写作、编码、数据分析等任务的高效协同。
1203 22
|
23天前
|
人工智能 安全 机器人
OpenClaw(原 Clawdbot)钉钉对接保姆级教程 手把手教你打造自己的 AI 助手
OpenClaw(原Clawdbot)是一款开源本地AI助手,支持钉钉、飞书等多平台接入。本教程手把手指导Linux下部署与钉钉机器人对接,涵盖环境配置、模型选择(如Qwen)、权限设置及调试,助你快速打造私有、安全、高权限的专属AI助理。(239字)
8322 24
OpenClaw(原 Clawdbot)钉钉对接保姆级教程 手把手教你打造自己的 AI 助手