zoukankan      html  css  js  c++  java
  • 接口中同一个方法不写public,为什么在实现类中一定要写public

    interface DeclareStuff {
       public static final int EASY = 3;
       void doStuff(int t);// public rabstract
    }
    public class TestDeclare implements DeclareStuff {
      public static void main(String[] args) {
        int x = 5;
        new TestDeclare().doStuff(++x);
      }
      void doStuff(int s) {
        s += EASY + ++s;
        System.out.println("s=" + s);
      }
    }

    关于此段代码编译会出错的问题

      首先,接口中所有方法默认都是public,至于为什么要是public,原因在于如果不是public,那么只能在同个包下被实现,可访问权限就降低很多了,那么在实现类中,实现的类相当于子类,子类的访问权限是不能比父类小的。

      而在java中一个类如果没有权限的修饰符,默认是friendly/default (同一个包内的其它类才可访问),所以在实现类中一定要写public

    往事如烟,余生有我.
  • 相关阅读:
    省选测试42
    省选测试41
    省选测试40
    省选测试39
    python海龟画图生成星星
    Python-列表简介
    Linux系统中设置默认的Java版本
    虚拟机无线网卡桥接失败
    pycharm设置启动图标
    禁用vscode硬件加速
  • 原文地址:https://www.cnblogs.com/assistants/p/9527971.html
Copyright © 2011-2022 走看看