Java 继承接口同名函数问题
来源:互联网 发布:win10多核优化怎么开 编辑:程序博客网 时间:2024/05/14 21:36
在Java中如果一个类同时继承接口A与B,并且这两个接口中具有同名方法,会怎么样?
动手做实验:
interface A{ void fun();}interface B{ void fun();}interface C extends A,B{}public class Test implements C{ @Override public void fun() { System.out.println("hehe"); } public static void main(String[] args) { new Test().fun(); }}运行截图:
上例的情况,可以正常编译运行,输出"hehe",因为A与B中的fun具有相同的签名(参数个数与类型相同)
interface A{ void fun();}interface B{ int fun(int x);}interface C extends A,B{}public class Test implements C{ @Override public void fun() { System.out.println("hehe1"); } @Override public int fun(int x) { return 0; } public static void main(String[] args) { new Test().fun(); }}
上例也是可以编译运行的,因为A与B中的fun方法具有不同的函数签名,本质上是两个方法,分别实现即可。
interface A{ void fun();}interface B{ int fun();}interface C extends A,B{}public class Test implements C{ @Override public void fun() { System.out.println("hehe"); } public static void main(String[] args) { new Test().fun(); }}
而这种具有相同函数签名,但不同返回值的方法,是没有办法编译的,接口C便已经无法编译。
0 0
- Java 继承接口同名函数问题
- 关于java中继承多接口实现其中同名方法的问题
- C++虚函数分析[1]--同名函数继承二义性问题
- Java 中继承之后同名静态变量的问题分析
- 多重继承中函数同名
- 多重继承中函数同名
- C++继承时子类定义同名成员变量时的调用继承函数的问题
- C++继承时子类定义同名成员变量时的调用继承函数的问题
- C++继承时子类定义同名成员变量时的调用继承函数的问题
- java接口的继承问题
- java接口的继承问题
- java中子类继承父类和实现接口有同名方法怎么处理
- 继承中的同名成员变量和同名成员函数
- C++学习笔记--继承中的同名变量和同名函数
- java 父类子类继承 同名变量 同名方法
- 解决多重继承中函数同名方案
- 解决多重继承中函数同名方案
- 多重继承(不同的父类中有同名函数)
- ElasticSearch环境搭建
- PAT 1082
- 1019. General Palindromic Number (20)
- java自动生成数据库代码
- Android Studio 插件配置加载卡住/插件所在文件目录管理
- Java 继承接口同名函数问题
- 有关TextView的进阶应用(一)
- 爬虫学习
- The Unique MST POJ - 1679 题解
- Socket编程之Tcp/Ip协议服务
- 文件管理器
- 学习搜索
- Linux(四):Linux中的进程控制块(PCB)—task_struct(部分字段)
- 进程调度算法