1. 包
包:定义包用package关键字。
1、 对类文件进行分类管理
2、 给类提供多层命名空间
3、 卸载程序文件的第一行
4、 类名的全称是 包名.类名
5、 包也是一种封装形式
2. 代码
package pack;
public class Test
{
public static void main(String [] args)
{
System.out.println("haha");
}
}
在命令行中按照以下操作:
javac–d 位置(.当前路径) java源文件 (就可以自动生成包)
即:javac -d . Test.java//会生成包和编译后的class文件
再按照java -d pack.Test//执行程序
3. 包与包之间的访问
有了包之后,范围变大,要访问需要public
包与包之间进行访问,被访问的包中的类和成员,需要public修饰
不同包中的子类还可以直接访问父类中被protected权限修饰的成员
包与包之间可以使用的权限只有两种,public protected
|
Public |
Protected |
Default |
Private |
同一个类 |
Ok |
Ok |
Ok |
Ok |
同一个包 |
Ok |
Ok |
Ok |
|
子类 |
Ok |
Ok |
|
|
不同包 |
Ok |
|
|
|
protected:子类只能在自己的范围内访问不同包中的父类方法。
4. import导入
导入指定包中的类。记住:实际开发时,到的哪个类就导入哪个类,不建议使用*.
import packa.*;//这个仅仅是导入了packa当前目录下的所有的类。不包含子包。
import packa.abc.*;//导入了packa包中的子包abc下的当前的所有类。
如果导入的两个包中存在着相同名称的类。这时如果用到该类,必须在代码中指定包名。
一个程序文件中只有一个package,但可以有多个import。
5. 常用包
java.lang : language java的核心包,jdk1.2版本后,该包中的类自动被导入。
java.awt : 定义的都是用于java图形界面开发的对象。
javax.swing: 提供所有的windows桌面应用程序包括的控件,比如:Frame , Dialog, Table, List 等等,就是java的图形界面库。
java.net : 用于java网络编程方面的对象都在该包中。
java.io :用于操作流对象都在该包中。比如:读取硬盘数据,往硬盘写入数据。
java.util : java的工具包,时间对象,集合框架。
6. jar包
1、 定义:Java的压缩包。
2、 作用
方便项目的携带。
方便于使用,只要在classpath设置jar路径即可。
数据库驱动,SSH框架等都是以jar包体现的。
3、 Jar包的操作:
通过jar.exe工具对jar的操作。
创建jar包:
jar -cvf mypack.jar packapackb
解压缩
jar -xvf mypack.jar
将jar包目录列表重定向到一个文件中:jar –tf 包名.jar >c:\1.txt
4、 在jdk目录下
tools jar包(在lib目录下):常用的java工具包,javac、java程序就在其中,如果将该文件重命名,java将无法运行。
src源代码包存放程序的源代码。