二、Java面向对象(7)_封装思想——访问修饰符

2018-04-30

 

访问修饰符

<访问权限范围越小,安全性越高>

 

public:表示全局的,可以在当前项目中任何地方访问    

  如果几个相互访问的public类分布在不用的包中,则需要导入相应public类所在的包。由于类的继承性,类所有的公有方法和变量都能被其子类继承。

  Java程序的main() 方法必须设置成公有的,否则,Java解释器将不能运行该类。

protected:能被同一个包中的任何其他类访问,也能够被不同包中的子类访问。

  (protected访问修饰符不能修饰类和接口,方法和成员变量能够声明为protected,但是接口的成员变量和成员方法不能声明为protected。)

private:表示私有的,表示类访问权限,只能在本类中访问

  (类和接口不能声明为private。)

  外部访问只能通过类中公共的Getter/Setter方法被外部类访问。

  private访问修饰符的使用主要用来隐藏类的实现细节和保护类的数据(封装)。

默认的:不使用任何关键字,表示包私有,表示包访问权限

  不使用任何修饰符声明的属性和方法,对同一个包内的类是可见的。接口里的变量都隐式声明为public static final,而接口里的方法默认情况下访问权限为public。

 ------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------

一般情况:

  字段都使用private修饰,为了隐藏,安全性。

  拥有实现细节的方法,一般使用private修饰。不希望外界(调用者)看到该方法的实现细节

  方法一般使用public,供外界调用。

  一般不使用默认的

  在继承关系中,父类需要把一个方法只暴露给子类,一般使用protected。

参考:

http://www.weixueyuan.net/view/5981.html

原文地址:https://www.cnblogs.com/sunNoI/p/8974147.html