Java接口与接口的关系
1.接口和接口之间的关系:继承关系
单继承: A接口继承B接口
多继承: A接口同时继承B接口,C接口...
多层继承: A接口继承B接口,B接口继承C接口
interface A{}
interface B{}
interface C1 extends A{} //单继承 接口可以继承另一个接口
interface C2 extends A,B{} // 多继承
interface C3 extends C2{} // 多层继承
public class Tests {
2.格式:
public interface 接口名 extends 接口名1,接口名2...{}
3.接口多继承时的冲突情况
1.公有静态常量的冲突:子接口无法继承父接口冲突的常量
2.公有抽象方法的冲突:子接口只会继承一个有冲突的抽象方法
3.公有默认方法的冲突:子接口中必须重写一次有冲突的默认方法
4.公有静态方法的冲突:静态方法是数据接口的,只能使用接口名直接访问,所有不冲突
5.私有方法的冲突:私有方法只能在本接口访问,没有冲突
4.公有静态常量的冲突:
interface A{int NUM1 = 10;
}
interface B{int NUM1 = 10;int NUM2 = 20;
}
interface C extends A,B{}public class Tests {public static void main(String[] args) {//System.out.println(C.NUM1); //接口A和接口B中的常量相同,调用的话编译报错System.out.println(C.NUM2);}
}
5.公有抽象方法的冲突:
void method();
}
interface B{void method();
}
interface C extends A,B{void method();
}
class Impl implements C{@Overridepublic void method() {System.out.println("实现接口的抽象方法");}
}public class Tests {public static void main(String[] args) {/** 共有抽象方法的冲突:子接口只会继承一个有冲突的冲突方法* */Impl impl = new Impl();impl.method();}
}
6.公有默认方法的冲突:
interface A{public default void method(){System.out.println("A接口中的默认方法method");}
}interface B{public default void method(){System.out.println("B接口中的默认方法method");}
}
interface C extends A,B{@Overridedefault void method() {System.out.println("重写父类接口中的method方法");}
}
class Impl implements C{}public class Tests {/** 公有默认方法的冲突:子接口中必须重写一次有冲突的默认方法* 子接口重写父接口中的默认方法,必须加上default* */public static void main(String[] args) {Impl impl = new Impl();impl.method();}}
Java接口与接口的关系相关推荐
- java 接口 实现和继承关系
一.抽象类 有时候,我们可能想要构造一个很抽象的父类对象,它可能仅仅代表一个分类或抽象概念,它的实例没有任何意义,因此不希望它能被实例化.例如:有一个父类"水果(Fruit)",它 ...
- java中的接口的定义以及实现关系
一.什么是接口? - 硬件接口:设备之间的连接方式 - 软件接口:程序代码,特殊的类,表示一种规范,是具有N个方法的特征集合. java中的接口: 专家说的多个抽象类的抽象就是接口. interfac ...
- Java从入门到放弃09---多态/向上转型/向下转型/多态内存图/抽象类/关键字abstract不能和哪些关键字共存/接口/类与类,类与接口,接口与接口的关系/抽象类与接口的区别
Java从入门到放弃09-多态/向上转型/向下转型/多态内存图/抽象类/关键字abstract不能和哪些关键字共存/接口/类与类,类与接口,接口与接口的关系/抽象类与接口的区别 01 多态 多态指的是 ...
- java中与接口类,Java中类与类、类与接口、接口与接口的关系
类与类 继承关系,只能单继承,但是可以多层继承. 类与接口 实现关系,可以单实现,也可以多实现,并且可以在继承一个类的同时实现多个接口. 接口与接口 继承关系,可以单继承,也可以多继承. 附:代码举例 ...
- 初识java类的接口实现
初识java类的接口实现 如果两个类之间不存在继承关系,且两个类都想实现同一个接口,两个类都必须实现接口中全部方法,否则报语法错误 如果两个类之间存在继承关系也想实现同一个接口,父类如果实现了某个接口 ...
- (邓爱萍)Java抽象 继承 接口
包 Javac –d package addpack ; public class IntegerAdd { public int addInt(int a,int b) ...
- JAVA基础14-Java接口及其使用
文章目录 接口语法和特点 接口语法和特点 接口语法: Interface 接口名{ //共有静态常量.抽象方法 } 接口的特点: 接口中只能存放静态常量和抽象方法,java接口是对功能的拓展. 通过实 ...
- Java中实现接口与继承的区别
** Java中实现接口与继承的区别 ** 首先,先来了解一下什么是接口和继承.接口一般是使用interface来定义的.接口定义同类的定义类似,分为接口的声明和接口体,其中接口体由常量定义和方法定义 ...
- 使用java+TestNG进行接口回归测试
TestNG是一个开源自动化测试框架,TestNG表示下一代(Next Generation的首字母). TestNG类似于JUnit(特别是JUnit 4),但它不是JUnit框架的扩展,相较于Ju ...
最新文章
- TOMACAT源码解析
- 《漫画算法》源码整理-4 大顶堆 小顶堆 优先队列
- Py之PIL:不一样的PS之利用PIL库的img.paste方法实现合成刘若英导演电影《后来的我们》海报设计
- python包和目录有什么不同_python模块和包的区别
- 线性表:3.链表,单链表详解与C语言实现
- Paradigm 已对 NFT 艺术品铸造和收藏协议 ZORA 进行投资
- 在server 2008R2组策略所有域计算机防火墙都处于更关闭状态
- 好用的代理服务器工具_secscanauthcheck越权检查工具
- 影视后期制作(Ae)
- 机器视觉应该先看什么书?
- C#上位机与三菱PLC通讯的实现步骤(图文)
- 2022年信息安全工程师考试知识点:计算机网络基本知识
- gulp_for_qa
- python click模块参数处理详解
- 春节快过腻了?不妨关心下太空探索
- Abbkine 彩色预染蛋白质Marker (10-180 kDa)方案
- Intellij IDEA 添加项目依赖
- 平面几何中的几个著名定理
- JAVA JDK8的介绍下载和安装(附网盘地址)
- export和import