问题描述
如果我没有明确说明,方法或实例变量的默认访问修饰符是什么?
What is the default access modifier for a method or an instance variable if I do not state it explicitly?
例如:
package flight.booking;
public class FlightLog
{
private SpecificFlight flight;
FlightLog(SpecificFlight flight)
{
this.flight = flight;
}
}
这个构造函数的访问修饰符是protected还是package?flight.booking
同一个包中的其他类可以调用这个构造函数吗?
Is the access modifier of this constructor protected or package? Can other classes in the same package, which is flight.booking
, call this constructor?
推荐答案
来自 Java 文档
如果一个类没有修饰符(默认,也称为包私有),它只在它自己的包中可见(包被命名为相关类的组——你将在后面的课程中了解它们.)
在成员级别
,你也可以使用public修饰符或no修饰符
(package-private),就像顶级类一样,意义相同.
At the member level
, you can also use the public modifier or no modifier
(package-private) just as with top-level classes, and with the same meaning.
你可以在这里阅读完整的故事():
Full story you can read here ():
http://codeinventions.blogspot.com/2014/09/default-access-modifier-in-java-or-no.html
这篇关于Java 中的默认访问修饰符是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!