java中子类继承父类和实现接口有同名方法怎么处理
2017-10-28 22:38
1476 查看
Java是一门单继承语言,但是,在子类的继承关系中,会存在父类和接口有同名方法的情况,这种情况该怎么处理呢?
我们来一步步验证:
1.子类继承父类,实现接口,父类和接口有同名方法
public interface MyInterface {
void test();
}
子类直接继承父类和实现接口不实现接口方法不报错,说明这种情况下默认父类实现该方法
2.我们将父类中方法注释掉,看看结果
public interface MyInterface {
void test();
}
很明显,子类在继承过程中出现了错误提示,需要实现接口中的方法
3.将父类中方法取消注释,子类实现该方法,代码如下:
public interface MyInterface {
void test();
}
可以看到,子类方法提示是重写的父类方法。
至此,验证完毕!
我们来一步步验证:
1.子类继承父类,实现接口,父类和接口有同名方法
public interface MyInterface {
void test();
}
public class Father { public void test() { System.out.println("父类方法"); } }
public class Son extends Father implements MyInterface{}
子类直接继承父类和实现接口不实现接口方法不报错,说明这种情况下默认父类实现该方法
2.我们将父类中方法注释掉,看看结果
public interface MyInterface {
void test();
}
public class Father { // public void test() { // System.out.println("父类方法"); // } }
很明显,子类在继承过程中出现了错误提示,需要实现接口中的方法
3.将父类中方法取消注释,子类实现该方法,代码如下:
public interface MyInterface {
void test();
}
public class Father { public void test() { System.out.println("父类方法"); } }
可以看到,子类方法提示是重写的父类方法。
至此,验证完毕!
相关文章推荐
- 2018/01/08JAVA 基础 / 接口与继承:[Q]:若父类Hero提供了一个有参的构造方法,但是没有提供无参的构造方法。子类应该怎么处理?
- 2018/01/07JAVA 基础 / 接口与继承:重写【子类继承并覆盖父类的对象方法】、隐藏【子类继承并覆盖父类的类方法】与实现类实现接口方法の区别
- java中的继承问题,类B继承A,那么构造方法需要这样写吗?这不是重复吗?还有接口与抽象类怎么实现?
- 关于java中继承多接口实现其中同名方法的问题
- java 父类子类继承 同名变量 同名方法
- java 子类继承父类成员变量的隐藏、实现方法的重写
- Java子类的父类和要实现的接口有相同的方法/函数会冲突吗
- 子类继承父类的同时又去实现一个成员变量、方法与父类相同的接口,最后调的是谁的成员变量和方法?
- java中怎么快速找到接口或者父类的实现和子类
- 2018/01/07JAVA 基础 / 接口与继承:对接口与实现类、子类与父类的关系の理解
- java创建多线程的两种方法(继承Thread类/实现Runnable接口)
- Java中在从父类中继承的成员变量在子类改变,怎么父类(super.num)的成员也一起改变?
- 父类的正常成员函数子类可以使用,并不是继承下来 的,子类是怎么调用父类的函数 : 可能是利用了一种叫函数名联编的方法.没有隐藏的情况下用函数名字来决定调用的函数.
- Java 中子类是否只继承父类的非私有变量和方法?
- 【转载】JAVA中线程的两种实现方法-实现Runnable接口和继承Thread类
- java--类继承和实现的接口中含有相同的方法
- java 子类可以继承父类中的什么,子类中方法覆盖,final关键字的含义
- java继承 子类重写父类方法
- C#中通过类来继承两个接口,父类实例化接口中的方法,子类继承父类,调用方法
- (JAVA子类引用指象父类引用)JAVA克隆对象,包括父类属性,无需实现序列化接口