一、private、protected、public和default的作用域
我们经常用着四种修饰符去修饰变量、方法和类,但是这四种的作用域都一样吗? 其中private和public可能是最多人知道的,但是protected和default可能就不知道其具体的作用域是哪些范围。先对其四种进行说明再通过案例进行证明:
public:具有最大访问权限。可以被同一项目下的任何类所调用,一般用于对外的情况。
protected:与public不同的是不同包下的类是不能使用的,但是其子孙类除外。所以我认为这是特意为子类设计的。
default:它是针对本包设计的,它所修饰的在本包下的其他类都访问。
private:只为类本身提供。是一种封装的体现。
二、案例
案例:先声明一个类,可以供子类继承。
packagecom.yuanfy.test.scope1;/*** @Description: 父类,其中有四种修饰符所修饰的变量和方法
*@authoryuanfy
* @date 2017年12月8日 下午5:04:35*/
public classPerson {privateString name;intage;protectedString color;publicPerson(){}public Person(String name, intage, String color) {super();this.name =name;this.age =age;this.color =color;
}public voidsay(){
System.out.println(this.name + " say: I am " + this.col