当前位置: 首页 > news >正文

第七节第三部分:从JDK8开始接口新增的方法、接口的多继承、注意事项

接口新增的三种方法

接口新增的方法

新增方法总结

新增方法总结

接口的多继承

接口的多继承

接口的多继承注意事项

注意事项

代码

代码一(从JDK8开始接口新增的三种方法)

A(接口)

package com.Interface_jdk;public interface A {//1.默认方法:必须使用default修饰,默认会被public修饰//实例方法:对象的方法,必须使用实现类的对象来访问default void test1() {System.out.println("默认方法");// test2();}/** 2.私有方法:必须使用private修饰,(JDK9才开始支持)* 实例方法::对象的方法,因为是私有方法,因此只能被该接口的其他方法调用*/
//    private void test2() {
//        System.out.println("==========");
//    }/** 3.静态方法:类的方法,必须使用static修饰,默认会被public修饰*/static void test3() {System.out.println("静态方法");}
}

B(类,继承接口A)

package com.Interface_jdk;public class B implements A{}

测试类Test(主程序)

package com.Interface_jdk;public class Test {//掌握接口新增的三种方法形式public static void main(String[] args) {B b = new B();b.test1();A.test3();}
}

运行结果

代码二(接口的多继承、注意事项)

代码1(接口的多继承说明)

package com.Interface_attention;public class Test {public static void main(String[] args) {}
}
interface A{void  test1();
}
interface B{void  test2();
}
interface C{void  test3();
}
interface D extends A,B,C{}
class E implements D{@Overridepublic void test1() {}@Overridepublic void test2() {}@Overridepublic void test3() {}
}

代码2(接口多继承的注意事项)

package com.Interface_attention;public class Test2 {public static void main(String[] args) {Zi z = new Zi();z.run();N n = new N();n.test();}
}//1.一个接口继承多个接口,如果多个接口中存在方法签名冲突,则此时不支持多继承。
interface I{void test1();
}
interface J{String test1();
}
//interface K extends I,J{}//2.一个类实现多个接口,如果多个接口中存在方法签名冲突,则此时不支持多实现。
//class E implements J,I{}//3.一个类继承了父类,又同时实现了接口,父类中和接口中有同名的默认方法,实现类会优先用父类的。
class Fu{public void  run(){System.out.println("父类的run方法");}
}interface IT{default void run(){System.out.println("接口的run方法");}
}
class Zi extends Fu implements IT{
}//4.一个类实现了多个接口,多个接口中存在同名的默认方法,可以不冲突,这个类重写该方法即可。
interface IT1{default void test(){System.out.println("IT1");}
}
interface IT2{default void test(){System.out.println("IT2");}
}
class N implements IT1,IT2{@Overridepublic void test() {System.out.println("自己的");}
}

运行结果

相关文章:

  • 产品方法论与 AI Agent 技术的深度融合:从决策智能到价值创造
  • 串口共用错误排查指南(2025年5月15日 09:25)
  • AI大模型应用:17个实用场景解锁未来
  • 全国青少年信息素养大赛 Python编程挑战赛初赛 内部集训模拟试卷九及详细答案解析
  • 特种设备事故背后,叉车智能监控系统如何筑牢安全防线
  • 深度学习中--模型调试与可视化
  • 【电子通识】热敏纸的静态发色性能和动态发色性能测试方法
  • 考研408《计算机组成原理》复习笔记,第二章(2)数值数据的表示(浮点数篇)
  • Cursor vs VS Code vs Zed
  • leetcode0621. 任务调度器-medium
  • Linux记录
  • 串行接口与并行接口
  • Scapy库交互式运行
  • 【steganalysis】Enhancing practicality and efficiency of deepfake detection
  • Java随机生成邀请码 (包含字母大小写+数字)
  • 代码随想录 算法训练 Day2:数组
  • 缺乏需求优先级划分时,如何合理分配资源?
  • Python网络请求利器:urllib库深度解析
  • c++ std::deque
  • Linux/Centos7离线安装并配置MySQL 5.7
  • 澎湃与七猫联合启动百万奖金征文,赋能非虚构与现实题材创作
  • 关税互降后的外贸企业:之前暂停的订单加紧发货,后续订单考验沟通谈判能力
  • 阿联酋与美国达成超过2000亿美元协议
  • “中国神湖”加快放大资源规模!3亿美元换海外年产380万吨钾盐项目
  • 权益类基金发行回暖,这些老将挂帅新基,谁值得买?
  • 最高降价三成,苹果中国iPhone开启大促销,能拉动多少销量?