lesson09Java包和导入和类路径讲述.ppt

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java 程序设计 第九讲 包、导入和类路径 华东师范大学 陈良育 * Outline package import classpath jar * package/import(1) 所有的Java类都是放置在同一个目录下面的,因此类之间的相互调用无需显式声明调用。 同一个目录下,两个类的名字不能相同 文件过多,查找和修改都不易,且容易出错。 Java支持多个目录放置Java,并且通过package/import/classpath/jar等机制配合使用,可以支持多处地方放置和调用Java类。 package/import(2) package 包 在Java类文件的第一句话给出包的名称 package cn.edu.ecnu; public class PackageExample { } 类的全称cn.edu.ecnu.PackageExample 在引用类的时候,必须采用全称 PackageExample.java必须严格放置在cn/edu/ecnu目录下 package/import(2) 包名 package name必须唯一 域名是唯一的,因此常用域名做包名 域名逆序:cn.edu.ecnu,从大到小 类的完整名字:包名+类名 包名:和目录层次一样 但是包具体放在什么位置不重要,编译和运行的时候再指定。 package/import(3) 在PackageExampleTest.java中,我们可用import关键字来引入PackageExample类 //PackageExampleTest.java import cn.edu.ecnu.PackageExample; // 必须写类的全称 public class PackageExampleTest {…main函数,参见代码…} package/import(4) cn.edu.ecnu.PackageExample的上级目录依次是ecnu,edu,cn。 而再上层的路径,将会在类运行的时候依靠classpath参数来决定。Java将依靠这个环境变量的指引去寻找合适所需要的类 java PackageExampleTest java –classpath .;c:\temp PackageExampleTest package/import(5) java –classpath .;c:\temp PackageExampleTest Java,执行命令,是java.exe的简写。 -classpath 固定格式参数,可以简写成-cp. 第三部分是一个(以分号连接起来的)字符串。以分号作为分隔符隔开,得到一个个子路径。当运行PackageExampleTest类的过程中,如果需要用到其他的类,就会分裂第三部分的字符串,得到多个子路径,然后依次在每个路径下,再去寻找相应类(全称,包名以点隔开对应到目录)。 主执行类的全称(含包名) package/import(6) 类名(全称) 文件名 文件全路径 A.B.C C.java C:\m1\A\B\C.java D.E.F(引用了A.B.C) F.java d:\m2\D\E\F.java G.H(引用了D.E.F,没有直接但是间接引用了A.B.C,因此仍然需要给出A.B.C的路径) G.H E:\m3\G\H.java A.B.C 编译 Xjavac c:\m1\A\B\C.java 运行 Xjava –classpath .;c:\m1 A.B.C D.E.F 编译 Xjavac –classpath .;c:\m1 d:\m2\D\E\F.java 运行 Xjava –classpath .;c:\m1;d:\m2 D.E.F G.H 编译 Xjavac –classpath .;c:\m1;d:\m2 e:\m3\G\H.java 运行 Xjava –classpath .;c:\m1;d:\m2;e:\m3 G.H Javac对应的是java.exe 编译命令,java对应java.exe 运行命令 package/import(7) package规则 编译一个类,需要java文件的全路径,包括扩展名。运行一个类,需要写类名全称(不是文件路径),也不能写扩展名。 编译类的时候,需要给出这个类所调用的类(包括被调用类所依赖的类)的所在路径。运行类的时候,需要给出这个类,以及被调用类的路径总和。 classpath的参数在Windows平台是以半角分号隔开;在Linux平台是以半角冒号隔开。 package/import(8) Package规则(续) Classpath参数可以是路径,也可以是jar包(参见下面的Jar节)。如果路径内有空格,请将classpath参数整体加一对双

文档评论(0)

整理王 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档