这里只贴最重要的代码,详细内容请访问原文: http://www.java2000.net/p11443
- package lession3;
- // 注意,我们使用了其它package的类,所以需要import进来
- // 注意:路径必须为完整的路径
- import lession3.otherpackage.PublicClassOtherPackage;
- /**
- * 老紫竹JAVA基础培训(3),认识类的访问权限描述符.<br>
- * 原则:<br>
- * public的类,可以被任何类在任何地方访问<br>
- * 默认权限的类(也就是没写任何访问描述符的类)只能在当前package访问,<br>
- * 不能被其它package的类访问。
- *
- * @author 老紫竹 JAVA世纪网(java2000.net)
- *
- */
- public class Lession3 {
- public static void main(String[] args) {
- // 调用同一package下的public访问权限类
- System.out.println(new PublicClassSamePackage().toString());
- // 调用同一package下的默认访问权限类
- System.out.println(new DefaultClassSamePackage().toString());
- // 调用不同package下的public访问权限类
- System.out.println(new PublicClassOtherPackage().toString());
- // 调用不同package下的默认访问权限类
- // System.out.println(new DefaultClassOtherPackage().toString());
- }
- }
- package lession3;
- /**
- * 相同package的默认访问权限类。
- *
- * @author 老紫竹 JAVA世纪网(java2000.net)
- *
- */
- class DefaultClassSamePackage {
- public String toString() {
- return "相同package的默认类";
- }
- }
- package lession3;
- /**
- * 相同package的公开访问权限类。
- *
- * @author 老紫竹 JAVA世纪网(java2000.net)
- *
- */
- public class PublicClassSamePackage {
- public String toString() {
- return "相同package的公开类";
- }
- }
- package lession3.otherpackage;
- /**
- * 其它package的公开访问权限类。
- *
- * @author 老紫竹 JAVA世纪网(java2000.net)
- *
- */
- public class PublicClassOtherPackage {
- public String toString() {
- return "其它package的公开类";
- }
- }
- package lession3.otherpackage;
- /**
- * 不同package的默认访问权限类。
- *
- * @author 老紫竹 JAVA世纪网(java2000.net)
- *
- */
- class DefaultClassOtherPackage {
- public String toString() {
- return " 不同package的默认类";
- }
- }
总结:
一个类如果想直接访问另一个单独的类,有2种情况
1 和自己在一个package下面,无论其是否为public
2 和自己不在一个package下面,且必须为public