java访问权限
- public
- protected
- default
- private
- 内部类
java中访问权限修饰符有以下4个:public、protected、default、private
public
public代表着公共的,在java源码中。公共类只能有一个,而且必须和源码文件名相同。
我们发现一直写的main方法也是public的权限,原因是main方法是由JVM调用的,JVM调用时应该可以任意调用,而不用考虑权限的问题。
上面解释了main方法为什么用public修饰,那么顺便解释一下,为什么要加static静态:如果不加static的话,main方法就是成员方法,那么成员方法的使用就需要构建对象,但JVM不确定构建对象所需要传递的参数,故main方法还是需要加静态,确保在任意的情况下都可以调用。
protected
受保护的权限,子类可以访问
default
默认权限,当不设定任何权限时,JVM会提供权限,包(路径)权限
private
private代表私有的,在同一个类中可以使用
内部类
我们从前面可知,Java不允许源码中直接声明的类使用private, protected修饰,这种类我们称之为外部类,相对应的,在类中声明的类就叫内部类。
内部类的使用非常简单,就当成外部类的属性使用即可。
下面是内部类的构建过程,内部类可以看作外部类的属性,所以需要构建外部类对象才可以使用
public class Java18_Object {
public static void main(String[] args) {
OuterClass outer = new OuterClass();
OuterClass.InnerClass innerClass = outer.new InnerClass();
}
}
class OuterClass {
public class InnerClass {
}
}