为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

正在回答

8 回答

public    全局

protected    本包    本类    不同包子类

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

private    本类

0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

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

2 回复 有任何疑惑可以回复我~

子类不一定在同包下

0 回复 有任何疑惑可以回复我~

private :只能本类可以使用;

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

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

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

1 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

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

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

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

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

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

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

4 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信