12
返回列表 发新帖
楼主: tulongwuhen

[SCJP] 关于javac的一道题

[复制链接]
论坛徽章:
0
11#
发表于 2009-10-27 16:48 | 只看该作者
当编译源文件时,编译器常常需要它还没有识别出的类型的有关信息。对于源文件中使用、扩展或实现的每个类或接口,编译器都需要其类型信息。这包括在源文件中没有明确提及、但通过继承提供信息的类和接口。

例如,当扩展 java.applet.Applet 时还要用到 Applet 的祖先类:java.awt.Panel 、 java.awt.Container、 java.awt.Component 和 java.awt.Object。

当编译器需要类型信息时,它将查找定义类型的源文件或类文件。编译器先在自举类及扩展类中查找,然后在用户类路径中查找。用户类路径通过两种途径来定义:通过设置 CLASSPATH 环境变量或使用 -classpath 命令行选项。(有关详细资料,请参阅设置类路径)。如果使用 -sourcepath 选项,则编译器在 sourcepath 指定的路径中查找源文件;否则,编译器将在用户类路径中查找类文件和源文件。

http://www.iplab.cs.tsukuba.ac.j ... cs/win32/javac.html

所以我觉得还是题目出错了,会报找不到文件的错误,而不会编译成功。

使用道具 举报

回复
论坛徽章:
0
12#
发表于 2009-10-30 12:03 | 只看该作者
楼上你的解释和你的结论刚好相反啊,我试过了,也是找不到文件,好像和文档说的不符啊。

使用道具 举报

回复
论坛徽章:
0
13#
发表于 2009-11-9 14:06 | 只看该作者

回复 #12 compasat 的帖子

解释和结论一致啊。
-classpath ,-sourcepath 找的都是被编译的java文件需要的资源(.class或者.java)。
而不是被编译的java文件本身。所以说书中的答案不对,应该是找不到文件。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表