黑马程序员技术交流社区
标题:
Java编译器处理 import 语句
[打印本页]
作者:
帅哥哥
时间:
2014-5-6 14:19
标题:
Java编译器处理 import 语句
本帖最后由 帅哥哥 于 2014-5-6 14:20 编辑
现在越来越觉着学习Java的时候,不仅要有扎实的基本语法基本功,还要对编译器、虚拟机等东东有深入的了解了!!!
现在和大家分享一下Java编译器是怎么处理 import 语句的
Demo类中有下列语句:
package com.abc.demoapp.demo;
import com.abc.demoapp.person.Person;
复制代码
由于 Demo 类的 import 语句中声明 Person 类位于 com.abc.demoapp.person 包中,因此Java编译器先找到 classpath 根目录下的 com\abc\demoapp\person 目录下寻找 Person.class 文件,然后到 -sourcepath 选项指定的 src 根目录下的 com\abc\demoapp\person 目录下寻找 Person.java 文件。
如果同时找到了 Person.class 文件和 Person.java 文件,Java编译器就会根据 Person.java 文件的更新日期来判断 Person.class 文件有没有过期,如果过期就会重新编译 Person.java ,否则就直接使用 Person.class 。
如果只找到了 Person.class 文件,Java编译器就会直接使用这个 Person.class 。如果只找到了 Person.java 文件,Java编译器就编译这个 Person.java 。
如果既没有找到 Person.class 文件,也没有找到 Person.java 文件,就会抛出编译错误,提示无法解析 Demo 类中的 Person 符号。
作者:
Conning
时间:
2014-5-7 16:57
谢谢楼主分享
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2