Java 类的访问权限
接下来,我们准备为大家介绍“类的访问权限”。
经过前面的学习,我们已经了解到什么是公有访问权限,什么是私有的访问权限,但是,在学习这些访问权限时,它们都是针对类中的属性与方法的,而接下来,我们要学习的访问权限是针对类的。
类的访问权限只有两种:
(1)公有访问权限,public,在当前包或其它包中可以访问(即当前文件或其它文件中可以访问)。
(2)包的访问权限,没有public关键字的就是包访问权限,
而包就是指类定义的代码所在的当前文件,就是包。
而包访问权限的类,只可以在当前文件中被访问,在其它文件中不可以访问。
例子1:
public class Test1() //公有访问权限,在当前文件或其它文件中可以访问Test1类
{
}
例子2:
class Test2() //class 前面没有public,就是包访问权限,只可以在当前文件中访问Test2类
{
}
类的访问权限的特性:
(1)每个文件中,即每个包中,只能有一个public公有访问权限的类,并且,该类的名字与
所在的文件名必须一样的。
(2)每个文件中,即每个包中,若多于一个public公有访问权限的类,则会报错。
接下来,我们结合例子作进一步的学习。
例子:
操作:在工程中新建一个类,名字是MyTest2,这样,在工程中就会出现一个对应的MyTest2的文件。
如果你不懂如何创建工程与类,可以回顾“Java开发环境搭建(2)“这一章。
//-------------------------------//
//-------MyTest2文件-------//
//-------------------------------//
public class MyTest2 //公有的类访问权限,因为class前有public
{
int x;
};
操作:在工程中新建一个类,名字是MyTest3,这样,在工程中就会出现一个对应的MyTest3的文件。
//-------------------------------//
//-------MyTest3文件-------//
//-------------------------------//
class MyTest3 //去掉class前面的public,这样,就变成为包访问权限
{
int x;
};
//----------------------------------------------------------------------------------------------//
//Mytest类是在第二章“Java开发环境搭建(2)” 学习时创建的
//----------------------------------------------------------------------------------------------//
public class MyTest
{
public static void main(String[] args) //入口方法main
{
MyTest3 My3 = new MyTest3(); //错误,类MyTest3是包访问权限,不可以在其它文件中
访问。
MyTest2 My2 = new MyTest2(); //正确,类MyTest2是公有访问权限,可以在其它文件中
访问。
My2.x = 1; //还可以通过对象My2调用类中的属性x,并对其进行赋值为1。
}
}
小结:
(1)通过类的public访问权限就可以访问其它文件中的类。
(2)通过类的访问权限,我们可以将类设计成是否能被其它文件访问。
(3)在程序设计时,我们可以把不同功能的类划分成不同的文件,从而让项目结构更加清晰。
非常好,现在,我们已经掌握了Java中的“类的访问权限”这个知识点,但是,如何去运行用它呢?所以,我们就要通过下方的按钮进入到游戏中,然后,运用它去完成任务,这样,才可以加深大家对每个知识点的理解和运用,以及“尽快进入到编程的状态”。
不要停留在理论规则上面,快动起来吧!
(通过游戏模式学习与训练,需要在电脑上运行)