Java Private、protected、public、以及无修饰符的可见范围

首先还是建议大家去看我的参考链接,因为那是官方的文档。

Ok,用两张表格说明问题:

在这里插入图片描述
如上图所示:

public 类型的,对于class 本身,以及同一包内的class,以及子类,以及所有的class 都可见。
protected 类型的,对于class 本身,以及同一包内的class,以及子类可见,但对其他范围的类不可见。
无任何修饰符,默认是包内可见。对于子类也不可见。
private 只在当前类可见。

在这里插入图片描述

在这里插入图片描述
上面这两张图,描述了两个包,package one , 以及package two ,Alpha 类 在不同修饰符下,对其他类的可见范围。

比如第三列,Alpha 类成员对于 Alphasub 来说,publiic,protected 是可见的,但是对于没有任何修饰符的(即包可见),以及private 的成员,都是不可见的。

参考:https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html

发布了431 篇原创文章 · 获赞 57 · 访问量 38万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章