您的位置:首页 > 编程语言 > Java开发

javaSE-基础篇-修饰符(private protected public)

2013-03-31 21:34 381 查看
java中提供了4中访问控制权限,分别是:private:私有的,只能本类中访问默认的:也就是没有写private 或 protected 或public的:同一个包中可见(同一个类中当然也可见)。protected:受包和继承关系的保护,本包中可以访问,不同包中的子类可以访问,当然,同一个包中的子类更能访问了public:公开的,都可以访问的到。
作用域private 默认 protectedpublic
本类YYYY
同一包中的类YYY
不同包中的子类YY
不同包中的非子类Y
在说明访问控制权限之前,我们先来看一下,我们学的修饰符都可以修饰哪些东西:比如,private可以修饰局部变量吗?
Public Protected-- Private Static Final Abstract
YYYNNYY
属性YYYYYYN
方法YYYYYYY
局部变量NNNNNYN
内部类YYYYYYY
说明:这里的Y表示可以修饰,N表示不可以修饰。下面我们说protected的使用及注意事项:1、同一个包中的本类,其他类,子类都是能访问的到的(有学生去关注了不同包,反而忽略了同一个包,特此说明,或者写下代码,一下就清楚了)。2、不同包中,父类不能访问,子类内部可以访问,其他类中的子类对象不能访问。父类:package com.aiai.study.oo;
public class Pet {
protected int i = 3;
}

子类 测试类: package com.aiai.study;
import com.aiai.study.oo.Pet;
public class Dog extends Pet {
public static void main(String[] args) {
Pet p = new Pet();
// 不同包中的父类对象不能访问
// p.i = 3;
// 不同包中的子类内部可以访问
Dog dog = new Dog();
dog.i = 3;
}
}

class Test {
public void test() {
Dog dog = new Dog();
// 不同包中非子类中,不能通过子类对象访问
// dog.i = 3;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java   private