一、1、概念:
一个项目下,需要若干类,如果类多了,就可以用包(文件夹)对类进行管理
2、定义的格式:
2/1 在java原码的第一句:
package.com.itcast.tools;
2/2 一般使用三层包
第一层:国际顶级域名:com或cn
第二层:公司名
第三层:模块或项目名
第四层:功能名
3、带包编译
javac -d . 类名.java
4、带包运行
要在包的根目录下运行
java 全名限定的类名(带包目录的类名)
4、如果一个类想要被其他包下的类访问,这个类就要定义成public的
5、package语句注意事项:
1、一定要放在java源文件的第一行有效语句上
2、在一个java源文件中,package只能有一条
3.如果没有package语句,表示默认包,类会被编译到项目根目录下
6、import语句注意事项:
1、import语句在package语句之后定义,并且要求定义在类之前
2、可以有多条import语句,每一条导入一个类
3、格式:import 包名.包名.包名.类名,导入具体的类
4、如果一个包下有多各类
1、写多条import语句,每一条导入一个类(常用方式)
2、使用通配符:import 包名.包名.包名.*;后面的*表示只导入那个包下的所有类,不包括子包下的类。(不推荐使用)
二、访问修饰符
1、我们的项目下会有很多的包,每个包下会有很多类;
2、可以对包下的这些类进行访问控制
3、访问修饰符
3/1 public、protected、(默认)、private
3/2 public可修饰类、成员变量、成员方法、构造方法
某个类或者某个成员被修饰为public,则所有包下的所有类都可以访问这个类或者这个成员
3/3 private能修饰成员变量、成员方法 、构造方法
表示此成员只能在此类的内部访问,在其他类中无法访问
3/4 protected能修饰成员变量、成员方法、构造方法
表示这个成员可以被本包内的其他类或者其他包中的子类访问
3/5 默认的可以修饰类、成员变量、成员方法、构造方法
只能在本包中的其他类或者子类被访问,包外的所有类都不能访问
| public | protected | 默认 | private |
同一类中 | √ | √ | √ | √ |
同一包子类,其他类 | √ | √ | √ |
|
不同包子类 | √ | √ |
|
|
不同包其他类 | √ |
|
|
|
4、访问修饰符可以修饰什么
4/1 类:默认,public,final,abstract
我们自己定义:public居多
4/2 成员变量:四种权限修饰符均可,final,static,不可用abstract修饰
我们自己定义:private居多
4/3 构造方法:四种权限修饰符均可、其他不可
我们自己定义:public 居多
4/4 成员方法:四种权限修饰符均可,fianl,static,abstract
我们自己定义:public居多