java版本9.0.4接口中定义private方法,出现private报错?

定义了私有方法后出现报错:modifier ‘private’ not allowed here

//默认私有
    public default void methodDefaultA(){
        System.out.println("默认方法A");
        /*System.out.println("AAA");
        System.out.println("BBB");
        System.out.println("CCC");*/
    }

    public default void methodDefaultB(){
        System.out.println("默认方法B");
        /*System.out.println("AAA");
        System.out.println("BBB");
        System.out.println("CCC");*/
    }

    private void methodDefaultCommon(){
        System.out.println("AAA");
        System.out.println("BBB");
        System.out.println("CCC");
    }

 

 

 

检查一下你的开发环境及运行环境是不是一样的,都是jdk9的版本,低于9的版本都会报错。

虽然出现了报错,但是在演示类中调用相应方法时,依然可以运行,没有报错,由人知道是什么情况吗

MyInterfaceAbstract.methodStaticA();

上述代码可以正常运行

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y

接口不能定义private 试想,所有实现接口的都会 实现接口的方法,如果这个接口的定义的函数是私有的,那么请问这个函数的方法在哪里实现。