Java 多重继承与接口
一个常见的问题是Java是否支持多重继承,答案是否定的 我正在寻找关于(Oracle)JVM如何处理此规则的详细说明;更具体地说: 在运行时,JVM是否有接口的概念,或者只是将其视为一个碰巧没有实现任何方法的抽象类 换句话说,我的代码会变成这样吗 我的代码:Java 多重继承与接口,java,jvm,multiple-inheritance,Java,Jvm,Multiple Inheritance,一个常见的问题是Java是否支持多重继承,答案是否定的 我正在寻找关于(Oracle)JVM如何处理此规则的详细说明;更具体地说: 在运行时,JVM是否有接口的概念,或者只是将其视为一个碰巧没有实现任何方法的抽象类 换句话说,我的代码会变成这样吗 我的代码: public class A extends B implements C { public interface C { 编译成: public class A extends B, C { public abstract class
public class A extends B implements C {
public interface C {
编译成:
public class A extends B, C {
public abstract class C {
在这种情况下,可以说JVM支持多重继承,只要不超过一个父类实现方法
还是说接口更深入地融入了JVM的内部?在运行时,JVM确实有接口的概念。通过接口类型调用的方法通过调用 将接口编译为抽象类不起作用:
- 一个方法实际上可以由一个类实现的多个接口实现
- 可以在实现接口的多个类型上调用接口方法李>
- 接口不提供其方法的实现李>