java - 抽象类中的具体方法和接口中的默认方法同名
问题描述
我已经在同名的抽象类中声明了默认方法和具体方法。
public class AbstractClassDefaultMethodTest {
public static void main(String[] args) {
DemoInterface testDefaultMethods=new TestDefaultMethods();
testDefaultMethods.display();
}
}
abstract class DemoClass{
public void display()
{
System.out.println("Inside display method of abstract class");
}
}
interface DemoInterface{
public default void display()
{
System.out.println("Inside display method of interface");
}
}
class TestDefaultMethods extends DemoClass implements DemoInterface
{
}
为什么抽象类的具体方法被调用?为什么我们没有收到编译时错误,因为两个方法名称都相同?
解决方案
推荐阅读
- python - 无法更新谷歌电子表格 api 中的对齐方式,未知名称“字段”,python,如何修复?
- c# - 我正在使用 WinForms C#,我想创建一个事件,在按住鼠标时执行我的命令,而不是重复点击
- wpf - 材料设计 wpf 图标按钮不停靠在右侧
- node.js - 容器无法运行时如何进入 Docker 映像文件系统
- java - UTF_8 编码器不编码 Unicode_escapes
- dpdk - DPDK Hello world:在自定义 Linux 中分配 rte 服务数组时出错
- hive - 如何在蜂巢中将日期转换为字符串?
- ios - SWIFT 5 - TableView 将加载/等待指示器添加到 SelectRowAt 函数 - UITableViewDelegate
- amazon-web-services - Kinesis 消费者 getRecords 不会始终返回 10,000 条记录
- php - 更新到 5.5.1 后的 Wordpress URL 问题