1、Class类的访问权限
public:可以供所有的类访问。默认:默认可以称为friendly,但是,java语言中是没有friendly这个修饰符的,这样称呼应该是来源于c++。默认的访问权限是包级访问权限。即如果写了一个类没有写访问权限修饰符,那么就是默认的访问权限,同一个包下的类都可以访问到,即可以实例化该类(当然如果这个类不具有实例化的能力除外,比如该类没有提供public的构造函数)。说明: 1、每个编译单元(类文件)都仅能有一个public class 2、public class的名称(包含大小写)必须和其类文件同名。 3、一个类文件(*.java)中可以不存在public class。此时,文件名可以任意取,这样容易造成混乱。 这种形式的存在的场景:如果我们在某个包内撰写一个class,仅仅是为了配合同包内的其他类工作,而且我们不想再为了撰写说明文档给客户(不一定是现实意义的客户,可能是调用这个类的类)看而伤脑筋,而且有可能过一段时间之后有可能会彻底改变原有的做法,并完全舍弃旧版本,以全新的版本代替。 4、class不可以是private和protected。 5、如果不希望产生某个class的对象,可以将该类得所有构造函数设置成private。但是即使这样也可以生成该类的对象,就是通过class的static的成员(属性和方法)可以办到。(注:貌似有点像单例模式)
2、类成员变量的访问权限(类成员变量和实例成员变量)
public:紧接public的属性任何类都可以访问到。可以直接使用ClassName.propertyName。但是从类的封装性上来考虑将一个类的属性定义成public一般很少使用,在定义静态常量的时候通常会这样定义。如:public
static final int PAGE_SIZE=10;private:只有类本身内部的方法可以访问类的private属性,当然内部类也可以访问其外部类的private成员的。(属性和方法)默认(friendly):包级可见,同一个包内的类可以访问到这个属性,可以直接使用className.propertyName来访问,但是从类的封装性特性来说很少这样使用类的属性的。protected:关键字所处理的是所谓“继承”的观念。对于同一包的其他类,protected=默认,对于不同包的类,如果存在继承关系,而baseClass存在protected属性,则可以被其自继承,而不同包的其他类则不能访问类的protected属性。
因而,权限的排序如下:public>protected>默认>private
3、类的成员方法的访问权限
其从语法角度来讲,这些访问权限控制符作用于类的方法和作用于类的属性上的效果是一样的。public:所有类可见。pirvate:只有同一类内部的方法可见,在有就是内部类也可以访问到。默认(friendly):包内可见。protected:继承可见。
分享到:
相关推荐
Java 访问修饰符 public protected private
经过长时间的学习和经验的积累,我总结出JAVA访问修饰符的全部特性和使用范围,外加使用权限,另外我还总结了一下关于接口,抽象类的一些特性
JAVA 访问修饰符 及 protected 几点被人忽略的致命要害,不看后悔哦,亲
对于一些初学者或者一些很久没看修饰符的学员,看看这些应该有些帮助,助人为乐是我一贯的作风
详细介绍java访问修饰符与费访问修饰符
也是通过查阅网上资料,初略的整理了一下,(包含了final、static、abstract和访问修饰符public、protect、default、private)写成规范文档希望对有需要的提供些帮助
java访问权限修饰符public.doc
主要介绍了Java访问修饰符原理及代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
以下是对Java中的访问修饰符进行了详细的分析介绍,需要的朋友可以过来参考下
Java和C# 中访问修饰符 及其对比说明
计算机二级摸底测验J继承和接口和java访问权限修饰符总结ava题目
JAVA访问修饰符
主要介绍了Java的访问修饰符与变量的作用域讲解,是Java入门学习中的基础知识,需要的朋友可以参考下
比较详细的介绍Java修饰符即及别,这是我把网络上以及自己比较的东西加以整合总计的,希望对Java触及爱好者有所帮助!
java的访问修饰符,private,protected,public,default的范围说明
父子类可以是不同包 在不同包下面只有public 与 protected 可以访问,而且protected必须是在继承关系下才能够访问
关于Java中各种修饰符与访问修饰符的说明.doc
知道c#中类和接口等默认修饰符吗?知道其成员的吗?知道各修饰符的作用吗?看看绝对帮到你。。
java访问权限修饰符[参考].pdf