08_java中包的使用
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例子: //类文件 TestPackage.java package einsun.ajie; public class TestPackage {
public int x=10; }
//类文件 TestImport.java import einsun.ajie.TestPackage; class TestImport {
Java 中包的使用
(张宗杰 2010 年 4 月 9 日)
一、包的作用
包的作用,分门别类的将功能文件放在不同的位置。 1、以下是 Java 中常用的系统包:
注:java.lang 是 java 语言的核心类库,包含了运行 java 程序必不可少的系统类,如基本 数据类型及操作。每个 java 程序运行时,都会自动加载该包---无需显示的引用。 2、系统包的存储位置以及源代码(Java 是开源的): java 的安装目录下,有个 src.zip 的文件,解压出来就能看到。如下图所示:
二、语法
将一条 package 语句作为 java 源文件中的第一条语句即可,这样,任何在这个文件中定义 的类都将属于这个包。 栺式为: package 包名;(包名一般为小写字母组成) 包像文件夹一样可以嵌套,只要使用点号“.”简单的把每个包名分开,就可以实现这个功能。 如:package einsun.ajie;
生成的目录为:
执行: 语法:java 包名.类名 如图所示:
说明:有这样的包,a.b.c 和 a.b.c.d,前面叫父包,后面叫子包。
四、包的导入
导入包的目的是将使用 Package 分离的各个类导入回来,让编译器能找到所需的类。 语法:import 包名.类名;
说明: 1、import 包名.*;表示导入该包下面所有的类。 2、import 包名.*并不会导入子包下面的类。 3、如果两个类在同一个包下面,那么则不需要导入,直接使用即可。
比较项目
Private 成员 默认的成员
同一类中可见
是
是
同一包中可见
否
是
同一包中对非子类可见 否
是
不同包中对子类可见
否
否
不同的包中对非子类可见 否
否
protected 成员 public 成员
是
是百度文库
是
是
是
是
是
是
否
是
public static void main(String[] args) {
TestPackage pk=new TestPackage(); System.out.println(pk.x); } } 思考:类 TestPackage 的访问修饰符能不能改成其他的?
五、类成员的访问比较
类成员的访问比较
动手编译并且执行该程序后出现的问题:
三、编译带有包的 java 文件
编译带有 package 声明的 java 源文件有 2 种方式: 1、直接编译,然后根据类中所定义的包名,逐一手工建立目录结构,然后将生成的 class 文
件放到该目录结构中(很少使用,比较麻烦)。 2、使用编译参数-d,方式为 javac -d . 源文件的名字.java,这样在编译后,编译器会自动帮 助建立好包所对应的目录结构。 如图所示:
public int x=10; }
//类文件 TestImport.java import einsun.ajie.TestPackage; class TestImport {
Java 中包的使用
(张宗杰 2010 年 4 月 9 日)
一、包的作用
包的作用,分门别类的将功能文件放在不同的位置。 1、以下是 Java 中常用的系统包:
注:java.lang 是 java 语言的核心类库,包含了运行 java 程序必不可少的系统类,如基本 数据类型及操作。每个 java 程序运行时,都会自动加载该包---无需显示的引用。 2、系统包的存储位置以及源代码(Java 是开源的): java 的安装目录下,有个 src.zip 的文件,解压出来就能看到。如下图所示:
二、语法
将一条 package 语句作为 java 源文件中的第一条语句即可,这样,任何在这个文件中定义 的类都将属于这个包。 栺式为: package 包名;(包名一般为小写字母组成) 包像文件夹一样可以嵌套,只要使用点号“.”简单的把每个包名分开,就可以实现这个功能。 如:package einsun.ajie;
生成的目录为:
执行: 语法:java 包名.类名 如图所示:
说明:有这样的包,a.b.c 和 a.b.c.d,前面叫父包,后面叫子包。
四、包的导入
导入包的目的是将使用 Package 分离的各个类导入回来,让编译器能找到所需的类。 语法:import 包名.类名;
说明: 1、import 包名.*;表示导入该包下面所有的类。 2、import 包名.*并不会导入子包下面的类。 3、如果两个类在同一个包下面,那么则不需要导入,直接使用即可。
比较项目
Private 成员 默认的成员
同一类中可见
是
是
同一包中可见
否
是
同一包中对非子类可见 否
是
不同包中对子类可见
否
否
不同的包中对非子类可见 否
否
protected 成员 public 成员
是
是百度文库
是
是
是
是
是
是
否
是
public static void main(String[] args) {
TestPackage pk=new TestPackage(); System.out.println(pk.x); } } 思考:类 TestPackage 的访问修饰符能不能改成其他的?
五、类成员的访问比较
类成员的访问比较
动手编译并且执行该程序后出现的问题:
三、编译带有包的 java 文件
编译带有 package 声明的 java 源文件有 2 种方式: 1、直接编译,然后根据类中所定义的包名,逐一手工建立目录结构,然后将生成的 class 文
件放到该目录结构中(很少使用,比较麻烦)。 2、使用编译参数-d,方式为 javac -d . 源文件的名字.java,这样在编译后,编译器会自动帮 助建立好包所对应的目录结构。 如图所示: