关于java中包和几种工具使用.ppt_第1页
关于java中包和几种工具使用.ppt_第2页
关于java中包和几种工具使用.ppt_第3页
关于java中包和几种工具使用.ppt_第4页
关于java中包和几种工具使用.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

包和几种JDK工具使用,第四章I,涉及到课本章节,第1章 1.3.3 包,包和几种JDK工具使用,1. 包 2. javadoc工具 -API文档生成器 3. jar工具,包(package),1.包介绍 2.创建和声明包 3.使用包 (1) 引用包中的类 (2) 导入包 4. 包和classpath,1.包介绍,定义: Java允许把多个类(.class)收集在一起成为一组 目的: 便于组织代码,使自己的任务和他人提供的代码库分离 为了防止多个类出现重名.,组织结构: 嵌套从而形成分层次、分等级. 存储结构: 一个包对应一个文件夹.,包(package),1.包介绍 2.创建和声明包 3.使用包 (1) 引用包中的类 (2) 导入包 4. 包和classpath,创建包: 包文件夹 包名文件夹名,2:创建和声明包,声明类所在的包,语法: package 包名1.包名2.包名3.; 注: package将源文件中的所有类添加到一个包中。(见CakeAndPie.java) package语句必须放在源文件的头部,在所有的类定义代码之前 如果源文件中没有package语句,那么此文件的所有类将被放到默认的包中。默认的包没有包名。,包(package),1.包介绍 2.创建和声明包 3.使用包 (1) 引用包中的类 (2) 导入包 4. 包和classpath,(1) 引用包中的类 语法: 包名1 .包名2.类|接口 举例: (1) public class AppletEx extends java.applet.Applet (2) java.util.Date today = new java.util.Date();,3:使用包,语法: import 包1.包2.类|接口 举例: import java.util.Date; /import可以引入某个特定的类 import java.util.*; /import也可以引入包中的所有类,(2) 导入包(中的类),导入包说明:,只能用*来引入一个包中的所有类,并不能嵌套引入下层包。 只能引入类,不能引入对象。如不能用import System.out。 Java缺省自动引入java.lang包中所有类,相当于import java.lang.*;,包使用的补充说明:-同名类问题,问题描述: 两个不同包中含有同名类. 实例: 如java.util包和java.sql包中都有一个Date类。 下面的程序会出现编译错误,因为编译器不知道使用哪个 Date类: import java.util.*; import java.sql.*; Date today; /编译错误 (见TwoDate.java),续:,解决方法: 用一条特定的import语句指明用哪个类。 import java.util.*; import java.sql.*; import java.util.Date; Date today; 附:若两个Date类都要使用,则只能在每个类前面加上完整的包名。,导入包的新支持 (JDK5 or Later),静态导入: 语法: import static packagename;,导入包的新加支持 (JDK5 or Later),作用: 简化代码 可以使被导入类的所有的静态变量和静态方法 在当前类中可见,使用这些静态成员无需再给出 他们的类名,可以直接使用,问题举例:,package utils; public class Repetition public static String twice(String s) return s+s; ,/?insert code here public class Example public static void main(String args) System.out.println(twice(“pizza”); Which code should be inserted at comment area of Example.java to compile and run Example to print”pizzapizza” ?,总结: Java源程序的结构,1. 包声明语句 package 包名1.包名2.; 2. 包导入语句 import 包名1.包名2.类|接口; 3. 类定义语句 class ,包(package),1.包介绍 2.创建和声明包 3.使用包 (1) 引用包中的类 (2) 导入包 4. 包和classpath,4.包和classpath,1) path和classpath 2) JVM查找类原理 3) JVM通过classpath查找类原理,1). path和classpath,设定Path变量是为了让OS找到指定的工具程序(例如Windowsexe) 设定Classpath目的就是为了让Java执行环境找到指定的Java类(JVMclass),2) JVM查找类原理:,查找类顺序: 如果没有设置classpath ,则会在当前的路径下查找; 如果设置了classpath ,则只在classpath中指定的路径 依次查找。 演示 Hello.java,3) JVM使用classpath查找类原理:,查找类原理: 1)先将classpath值作为查找的.class的根目录。 2)从根目录开始,解释器将获取包的名称并将每个.替换成,以从classpath根中产生一个路径名称. 3)得到的路径与classpath中的各个不同的项相连接. 解释器就在这些目录中查找用户创建的类的相关的名称的.class 文件. 见JDK docstechnotestoolswindowsclasspath.html,示例程序:,package mycake; import mypie.Pie; class Cake void f() System.out.println(“Cake.f()”); public class CakeAndPie public static void main(String args) Cake c=new Cake(); c.f(); Pie p=new Pie(); p.f(); ,package mypie; public class Pie public void f() System.out.println(“Pie.f()”); ,处理步骤: 1.在相应目录位置创建mycake和mypie文件夹. 2.分别编译CakeAndPie.java和Pie.java 3. 运行java mycake.CakeAndPie,问题:,将mycake和mypie放在相同的根目录下,在设置和不设置classpath时分别运行,查看结果如何? 将mycake和mypie分别放到不同的根目录下,设置的classpath不变的情况下,查看如何?,使用javac命令编译带包的java文件,格式: javac -d 新的class文件路径 源.java路径,包和几种JDK工具使用,1. 包 2. javadoc工具 -API文档生成器 3. jar工具,2. javadoc工具 -API文档生成器,作用: 从java源文件生成完整的API文档(html页) 作用范围: 支持整个包(若干个),单个源文件(若干个)等运行javadoc 实现: 只强调声明部分,忽略实现,javadoc工具使用:,使用格式(命令行) javadoc d 新名 -author 包名(源文件名) 注:javadoc只处理源文件中在类/接口定义、方法、构造器之前的注释,忽略位于其他地方的注释 . /* *有效注释部分(产生输出信息) * author/see/version标记等 */,Javadoc意义,现实意义: 在软件项目管理中,合理地使用javadoc不仅可以减少开发时的文档工作量,提高效率;而且还非常有利于将来软件的修改和维护 见javadoc使用帮助(.doc文件)及JDK源,包和几种JDK工具使用,1. 包 2. javadoc工具 -API文档生成器 3. jar工具,3.Jar工具- jar文件生成器,jar 文件格式 : (1)jar文件是java的一种文档格式。 (2)jar文件就是.zip文件,但是多了一个(可选的)META-INF文件夹 (3)可以使用winrar、winzip等压缩软件解压缩或打开.,详见帮助:docstechnotesguidesjarjar.html中JAR file specification,Jar文件的现实作用:,用于压缩文件 用于发布Java程序 用于部署和封装类、组件和插件程序,A:jar工具使用,Jar工具描述: combines multiple files into a single JAR archive file Jar工具适用于: (1) 创建jar文件 (2) 更新jar (3) 解压jar文件,详见帮助: docstechnotestoolswindowsjar.html,Jar语法格式:,创建(create)jar文件 jar cv0Mf jarfile -C dir inputfiles -Joption jar cv0mf manifest jarfile -C dir inputfiles -Joption -e entrypoint jar cv0M -C dir inputfiles -Joption jar cv0m manifest -C dir inputfiles -Joption,更新(update)jar文件 jar uv0Mf jarfile -C dir inputfiles -Joption jar uv0mf manifest jarfile -C dir inputfiles -Joption -e entrypoint jar uv0M -C dir inputfiles -Joption jar uv0m manifest -C dir inputfiles -Joption,解压(extract)jar文件 jar xvf jarfile inputfiles -Joption jar xv inputfiles -Joption,详解创建jar文件的命令格式:,创建(create)jar文件 jar cv0Mf jarfile -C dir inputfiles -Joption jar cv0mf manifest jarfile -C dir inputfiles -Joption -e entrypoint jar cv0M -C dir inputfiles -Joption jar cv0m manifest -C dir inputfiles -Joption,详解创建jar文件命令:,jar cv0Mf jarfile -C dir inputfiles -Joption c: 创建一个新的jar文件 f: 创建一个jar文件(必须与jarfile参数配对出现) jarfile:创建的jar文件名 inputfiles: 由空格分隔的文件或者是文件夹(允许使用通配符) Manifest:预先存在的包含了属性:值描述信息文件,与m参数必须配对出现 可选参数: M:在jar文件中包含manifest文件或者删除(如果存在) m:jar文件中包含使用了属性:值描述的manifest.mf -c dir:暂时改变当前的输入文件所在的目录到dir目录 -J option:向当前的JRE传递option选项.,创建可执行的jar文件,作用: 发布java应用程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论