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

JAVA中的访问修饰符和包

2017-02-09 19:47 183 查看
一、JAVA访问修饰符

访问修饰符,用来控制类中成员的可见性

有四个访问修饰符,分别是:default,private,public,protected

1、default(默认):默认权限,不用写的。在同一包内访问。

2、private(私有):只能在同一类中访问。

3、public(公有):在任何地方都可以访问

4、protected(受保护的):子父类(即使子父类不在同一包)和本包中可访问。

 public > protected > default > private

 

二、包package

在大型项目中,往往会有几十甚至几百个类,如果不对类进行分类管理,后期进行维护时会有很大的不便。

所以,需要对类(或其它类型)进行分类组织管理,这种机制就称为“包”。

“包”是类的容器,用于分隔类名空间。如果没有指定包名,所有的示例都属于一个默认的无名包。

 

访问不同包中的class,需要导入包import

如下,定义一个新的Job类,并且将Job类放在study包内

package study;    //定义study包

public class Job {        //包中定义Job类
public String jobName;
public void show(){
System.out.println(jobName);
}
}


然后在包中访问这个job类时,需要import导入study包中的job类:

import study.Job;    //导入study中的Job类

public class MyTest {
public static void main(String[] args)
{
Job myJob=new Job();    //实例化Job类
myJob.jobName="工程师";    //调用类的成员属性
myJob.show();                     //调用类的成员方法
}
}


输出结果:

工程师

 

进一步说明:按以上导入包类的方法,如果study包中定义了N侈个类,则每次实例化不同类的对象时,都需要写import study.xxxx,如有100个类就要写100次import,较麻烦

我们可以用星号*代替包中的所有类名,一次性导入包中的所有类——import study.* 

import study.*;        //一次性导入study包中的所有类

public class MyTest {
public static void main(String[] args)
{
Job myJob=new Job();
myJob.jobName="工程师";
myJob.show();
}
}


注:

同一包中的类,不但表示其在同一包容器中,同时,还处于同一物理路径中。

定义class时,建议都要设置package,尽量不要放在默认包中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  访问修饰符