标题:关于.class文件的问题
只看楼主
心动音符
Rank: 1
等 级:禁止访问
威 望:1
帖 子:832
专家分:0
注 册:2005-9-15
 问题点数:0 回复次数:1 
关于.class文件的问题
两个类
类1:(保存在F:/java编程/Program/print.java)
package classbag.helloworld;
public class print
{
public void pt()
{
System.out.println("Hello World!");
}
}
类2:(保存在F:/java编程/Program/HelloWorld.java)
import classbag.helloworld.*;
public class HelloWorld
{
public static void main(String args [])
{
new print().pt();
}
}
企图用类2中import把类1中的包给调入到类2中然后通过类2调用类1中的pt()来打印出HelloWolrd!文字
第一步:
F:/java编程>javac -d . ./Program/print.java
在F:/java编程/classbag/helloworld文件夹中生成了print.class文件(没有问题)
第二步:
F:/java编程>javac -d . ./Program/HelloWorld.java
在F:/java编程文件夹下生成 HelloWorld.class文件(没有问题)
第三步:
F:/java编程>java HelloWorld
运行 输出了 HelloWorld!文字 完全正确!下面问题来了
第四步:
F:/java编程>javac ./Program/HelloWorld.java
在F:/java编程/Program中生成HelloWorld.class文件
第五步:
F:/java编程>java Program.HelloWorld
出错!提示:
Exception in thread "main" java.lang.NoClassDefFoundError:Program/HelloWorld(wrong name:HelloWorld)
第六步:
我把刚才生成的HelloWorld.class拷贝到F:/java编程文件夹下
F:/java编程>java HelloWorld 没有问题
第七步:
我把类2加句package classbag.helloworld;
package classbag.helloworld;
import classbag.helloworld.*;
public class HelloWorld
{
public static void main(String args [])
{
new print().pt();
}
}
F:/java编程>javac -d . ./Program/HelloWorld.java
在F:\JAVA编程\classbag\helloworld文件夹下生成HelloWorld.class文件编译没有问题
但是我把这个文件在拷贝到F:/java编程文件夹下编译却又出了问题

[此贴子已经被作者于2006-11-5 19:32:40编辑过]

搜索更多相关主题的帖子: java编程 package public import 
2006-11-05 19:31
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
有包的文件,要记得,包和文件夹是对应的

可惜不是你,陪我到最后
2006-11-05 22:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-100924-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.698486 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved