Java访问修饰符

修饰符说明
public 共有的,对所有类可见。
protected 受保护的,对同一包内的类和所有子类可见。
private 私有的,在同一类内可见。
默认的 在同一包内可见。默认不使用任何修饰符。

public:公有的

被声明为public的类,方法,构造方法和接口能够被任何其他类访问.如果几个相互访问的public类分布在不同的包中,则需要导入相应的public类所在的包.

由于类的继承性,类所有的共有方法和变量都能被其子类集继承.

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

protected:受保护的

被声明为protected的变量 ,方法,构造方法能够被同一个包中的任何其他类访问,也能被不同包中的子类访问.

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

子类能够访问protected修饰符声明的方法和变量,这样就能保护不相关的类使用这些方法和变量。

Private

被声明为private的方法,变量,构造方法只能被所属类访问,并且类和接口不能声明为private.

声明为私有访问类型的变量只能通过类中公共的getter和setter方法被外部类访问.

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

  1. public class Dog{
  2.     private String name;
  3.     private int age;
  4.     public String getName() {
  5.         return name;
  6.     }
  7.     public void setName(String name) {
  8.         this.name = name;
  9.     }
  10.     public int getAge() {
  11.         return age;
  12.     }
  13.     public void setAge(int age) {
  14.         this.age = age;
  15.     }
  16. }

默认的:不使用任何关键字.

不使用任何修饰符声明的属性和方法,对同一个包内的类是可见的.接口里的变量都隐式声明为 public static final.

而接口里的方法,默认情况下访问权限为public .

 

访问控制和继承:

请注意以下方法继承的规则:

1.父类中声明为public的方法,子类中也必须声明为public.

2.父类中声明为protected的方法在子类中要么 声明为protected,要么声明为public,不能声明为private.

3.父类中 默认修饰符声明的方法,能够在子类中声明为private.

4.父类中声明为private的方法,不能被继承.

 

如何使用访问控制符:

1.当需要自己 编写的 类被所有`  其他的类访问时,用public声明

2.当需要让自己的类被自己的包中类访问时,就可以 省略访问控制符.

3.当需要控制一个类中的成员 数据时,可以将这个类中 的成员数据访问控制符设置为public,protected或者 省略.

 

posted on 2017-03-31 16:39  寒武纪海  阅读(524)  评论(0)    收藏  举报