服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

关于java import 的一个小问题


  有两个简单程序,他们放在同一目录下:
1.
//filename:test.java
import show;
public class test {
public static void main(string[] args) {
show sungo = new show();
sungo.myname();
}
}
2.
//filename:show.java
public class show{
public void myname(){
system.out.println("my name is helloworld!");
}
}
编译show.java后,再编译test.java出现下面的错误提示
---------- javac ----------
test.java:3: '.' expected
import show;
^
1 error

输出完成 (耗时 1 秒) - 正常终止

-------------------------------
将test.java文件中
import show;语句注释掉以后,将编译通过,执行java test.class ,
---------- java ----------
my name is helloworld!

输出完成 (耗时 0 秒) - 正常终止
----------------------------

java编译时搜索classpath.在classpath中已经设置了“ .;” 即当前目录。编辑器自动寻找当前目录中包含的类,如果存在即执行,而加入了 import show;实属多此一举,以前以为这样不会有什么问题,也没有看到有书上说明这个存在问题。通过上面的测试,发现不该做的就不要做,徒劳无益。上面的问题是在一个所谓的权威书籍的样例中发现的,也不知道该书作者是否做个测试,或者他用的是另外一个星球的jdk版本。

另package 和import的简单实例
新建dir文件夹,将show.java 放入该文件夹下编译。
//filename:test.java
import dir.show;
public class test {
public static void main(string[] args) {
show sungo = new show();
sungo.myname();
}
}
//filename:show.java
package dir; //新增的部分
public class show{
public void myname(){
system.out.println("my name is helloworld!");
}
}
执行结果
---------- java ----------
my name is helloworld!

输出完成 (耗时 0 秒) - 正常终止
----------------------------

扫描关注微信公众号