文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>[notes] java深度历险 -- package与import机制

[notes] java深度历险 -- package与import机制

时间:2010-09-17  来源:lqseu

1.编译时期的package运作机制 javac类似于make机制,但是对于当前编译的文件则是纯手动编译的方式。 A.java

package edu.seu.test;
public class A
{
   public static void main(String[] args)
  {
     System.out.println("I'm A");
  }
}


e.g.:

1)javac edu.nctu.mot.A.java

在编译时期,不会自动把命令行中所指定的原始文件中的“.”转换成“/”,我们指定什么文件,编译器一律认为是单纯的文件名。所以会产生错误。

2)javac -classpath .\my\edu\seu\test A.java

A.java并非通过make机制来编译,而是我们手动输入指令编译,所以根本不会用到类路径引用表(如果A中引用其他类则会通过make机制进行编译,将会使用类路径引用表机制)。因此编译器根本找不到A.java

3)javac d:\my\edu\seu\test\A.java

在指定路径可以找到该文件,可以编译成功。

2.运行时期动态链接

1)java edu.nctu.mot.A

类路径应用表中只有一个“.”,以此为起点,系统会自动把“.”转换成“/”,因此,会找到A.class。

2)java -classpath .\edu\nctu\mot A

类路径引用表中只有一个 ".\edu\seu\test",以此为起点,系统会找到A.class,可是在检查类文件内部信息的时候,发现A.class属于edu.seu.test这个package,所以根据类路径引用和相对路径的机制,会到.\edu\seu\test\edu\seu\test这个目录下寻找,因此会出现错误信息。

3)java d:\my\edu\seu\test\A

系统无法接受这样的指令

 

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载