JAVA。关于接口的说法

下面关于接口的说法中不正确的是
如图所示,请对正确的选项做出详细解答,错误的选项指出错误原因,以及implement与interface的区别,如何区分两者,谢谢

img

D,接口不能实例化。 implement与interface的区别?不应该是 接口与抽象类的区别么

java里继承用extends,而实现接口用implement,不像c#里全用冒号
D是错的,接口和抽象类都不可以实例化

  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/369307
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:java面试题41 下面字段声明中哪一个在interface主体内是合法的? ()
  • 除此之外, 这篇博客: JAVA学习之接口(interface)包含的内容中的 测试类:主函数在此,实例化实现类,得到对象,通过对象调用方法  部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • package testinterface;
    
    public class main {
        static public void main(String[] args)
        {
            testmain testmain1=new testmain();
            testmain1.methodAbs1();
            testmain1.methodAbs2();
            testmain1.methodAbs3();
            testmain1.methodAbs4();
            }
    }
    

     

  • 以下回答由chatgpt基于相关博客总结生成:

    Java中接口的正确选项是:接口作为返回值类型时,返回它的子类对象。

    关于implement和interface的区别,implement是实现接口的关键字,用于让类实现某个接口的方法;而interface是接口的关键字,用于定义一个规范,规范了实现了该接口的类需要如何实现某些方法,从而可以实现多态性和代码重用。

    在代码中,如果我们要声明一个接口需要使用interface关键字,并且不需要指定接口的访问权限,因为默认就是public,如下所示:

    public interface MyInterface {
        // 接口方法
        void method1();
        void method2();
    }
    

    如果我们要让类实现某个接口,则需要在类声明的时候使用implements关键字,并实现该接口的所有方法,如下所示:

    public class MyClass implements MyInterface {
        // 实现接口方法
        public void method1() {
            // do something
        }
        public void method2() {
            // do something
        }
    }
    

    最后需要注意的一点是,接口作为方法参数时,可以传递实现了该接口的子类对象,因为子类实现了接口的所有方法;接口作为返回值类型时,可以返回实现了该接口的子类对象,因为子类是接口的实现类。具体见参考资料中的代码示例。