问答详情
源自:7-3 Java 中的访问修饰符

当访问修饰符为默认的时候,可以在同包中使用,却不可以在子类中使用。可子类不就是和父类在一个包中吗?这个怎么理解

子类可以和父类不在同一个包中吗?怎么实现

提问者:我信仰自己 2018-11-12 10:54

个回答

  • qq_慕数据1267178
    2020-11-05 15:55:20

    public    全局

    protected    本包    本类    不同包子类

    default    本包    本类    (缺省修饰符)

    private    本类

  • tiger爱小狄
    2019-04-29 13:49:30

    子类和父类不一定是同包,后面学了继承,你就知道了

  • 慕沐6598592
    2019-03-12 23:48:49

    是不是子类跟在不在同一个包没有关系,子类是通过在类名后+关键字extends来确定关系的。

  • 北顾岛城
    2019-02-10 17:54:25

    子类不一定在同包下

  • 月冷风与霜
    2019-01-19 16:15:34

    private :只能本类可以使用;

     无修饰符的默认 :本类、本包下其他类可以使用(不同包的子类以及其他包的类); 

    protected :本类、本包下其他类以及本包的子类都可以使用;

    public :本项目下所有的包中的所有的类都可以访问使用。

  • 慕仔3093980
    2018-12-04 21:58:40

    就是说子类有可能在其他的包中 !所以说是不行的

  • 雀雀you
    2018-11-19 18:49:21

    首先你要搞清楚四个访问修饰符的作用范围

    默认的访问修饰符,作用范围:本类,同包中。

    受保护的作用范围:本类,同包中,子孙类。

    如果,子类和父类在同一个包中,父类的访问修饰符即使是默认的,在子类中也可以调用。

    但是,子类和父类不在一个包中,父类的访问权限就要大于默认的。否则代码还没编写完就报红叉叉了。

    并且当你打算使某类作为父类来使用的话,最好是用protected。这是专为基类使用的访问修饰符。

  • 慕仙2242888
    2018-11-12 14:43:47

    在子类中导入(import)父类就可以啦