访问权限类型: 在JAVA中,类的访问权限包括了***public***和***无关键字***,其中public为公共访问,而无关键字为默认权限。而类成员的访问权限包括了pulic,protected,private和无关键字。 与C++相比,JAVA中类成员的访问权限没有friend.这些访问权限控制符的区别 在这里我给大家放一张图。 这里我们可以将其形象化,加入A是C,D的父亲,B和C是A的同事,E是对他们来说的陌生人。 然后我们可以看到相关的信息: 对B来说:可以访问到A的public v1,可以访问到B的protected的v2,可以访问到无关键词的v3,但是无法访问到private的v4。 对C来说:可以访问到A的public v1,可以访问到B的protected的v2,可以访问到无关键词的v3,但是无法访问到private的v4。 对D来说:可以访问到A的public v1,可以访问到B的protected的v2,但是不可以访问到无关键词的v3,也无法访问到private的v4。 对E来说:可以访问到A的public v1,但不可以访问到B的protected的v2,也不可以访问到无关键词的v3,同样无法访问到private的v4。
这使我们有的考虑: 对于public的内容,无论有没有关系都可以进行访问。 对于private的内容,只有自己才能访问。 对于无关键词的内容,只有自己的子孙才能访问。 对于protected的内容,只要是有关系的类都能访问。(即子孙或者在同一个包里)。