请问这是什么错误?

Z8157522 2008-02-07 05:34:36
//我用的eclipse

package Chapter10; //这里有提示说A class file was not written......然后就无法run,请问是为什么?下面的代码都没报错了。

public class producor {

public static void main(String[] args) {
quantity q=new quantity();
new Pro(q);
new con(q);
System.out.println("a a a");
}

}
class quantity
{
int n;
boolean b=false;
synchronized int get()
{
if(!b)
try{
wait();
}catch(InterruptedException e){
System.out.println("catch");
}
System.out.println("a"+n);
b=false;
notify();
return n;
}
synchronized void put(int n)
{
if(b)
try
{
wait();
}catch(InterruptedException e){
System.out.println("put errors");
}
this.n=n;
b=true;
System.out.println("put"+n);
notify();
}
}
class Pro implements Runnable
{
quantity q;
Pro(quantity q)
{
this.q=q;
new Thread(this,"Pro").start();
}
public void run() {
int i=0;
while(true)
{
q.put(i++);
}

}

}
class con implements Runnable
{
quantity q;
con(quantity q)
{
this.q=q;
new Thread(this,"con").start();
}
public void run()
{
while(true)
{
q.get();
}
}
}
...全文
108 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
Z8157522 2008-02-08
  • 打赏
  • 举报
回复
呵呵,猜错了。。刚从郁闷中爬出来。一 个问题解决了还是高兴了些
老紫竹 2008-02-08
  • 打赏
  • 举报
回复
不客气,新年快乐!今天你心情一定不错!。。。。。
Z8157522 2008-02-08
  • 打赏
  • 举报
回复
谢谢!!!!!!!!!!!!!!!!!!!!
dracularking 2008-02-08
  • 打赏
  • 举报
回复
呵呵 改名的时候才看见了更明确的提示

con is an invalid name on this platform.
老紫竹 2008-02-08
  • 打赏
  • 举报
回复
con是DOS保留字,好象是一设备,WINDOWS也是建立在DOS基础上的。
所以,不能再windows下面创建名字为con/Con,CON 的类!哈哈哈!我都忘了这个问题了,还有一些其他的类名也不能建立

con是操作系统保留的一个设备名字,还有很多设备名都不能拿来用,如下:

The following reserved device names cannot be used as the name of a file: CON, PRN, AUX, CLOCK$, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9. Also avoid these names followed by an extension (for example, NUL.tx7).
老紫竹 2008-02-08
  • 打赏
  • 举报
回复
真可惜,经过我的测试,con 竟然和某些类冲突,所以你需要把
con 改成其他的名字,比如mycon 就可以了!

我再去查一下为什么这样!
Z8157522 2008-02-08
  • 打赏
  • 举报
回复
没有。。我也奇怪它怎么没有编译。代码应该没有错啊,而且上面那些类都编译了。。谢谢老紫竹!新年快乐
老紫竹 2008-02-08
  • 打赏
  • 举报
回复
class con implements Runnable

你的文件里面有这个类,难道他没有编译吗? 你看看是否有编译错误?
Z8157522 2008-02-08
  • 打赏
  • 举报
回复
老紫竹那么早啊,辛苦了,大过年的。
少了一个CLASS文件也可以运行么?但是ECLIPSE是报错了。。。。
Exception in thread "main" java.lang.NoClassDefFoundError: Chapter10/con
at Chapter10.producor.main(producor.java:8)
Caused by: java.lang.ClassNotFoundException: Chapter10.con
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
... 1 more
put0
老紫竹 2008-02-08
  • 打赏
  • 举报
回复
你在IDE里面运行的吧!那个提示应该只是一个警告吧!你可以忽略他继续运行的!
Z8157522 2008-02-08
  • 打赏
  • 举报
回复
在src/Chapter10/下了,名字正确,我检查了下。
在thread\bin\Chapter10这个目录下少一个CLASS文件,就是con类的,不知道为什么没出来,请问这是为什么?要怎么改?
jinjieai4587 2008-02-07
  • 打赏
  • 举报
回复
按一楼说的查查
ly_sr 2008-02-07
  • 打赏
  • 举报
回复
对,eclipse里对路径要求很严,首先检查路径是否正确
老紫竹 2008-02-07
  • 打赏
  • 举报
回复
你的文件名叫
producor.java吗?
放在了
src/Chapter10/目录下面吗?
什么是数据仓库呢?数据仓库是一个为数据分析而设计的企业级数据管理系统。数据仓库可集中、整合多个信息源的大量数据,借助数据仓库的分析能力,企业可从数据中获得宝贵的信息进而改进决策。同时,随着时间的推移,数据仓库中积累的大量历史数据对于数据科学家和业务分析师也是十分宝贵的。 数据仓库建模的意义是什么呢?如果把数据看作图书馆里的书,我们希望看到它们在书架上分门别类地放置;如果把数据看作城市的建筑,我们希望城市规划布局合理;如果把数据看作电脑文件和文件夹,我们希望按照自己的习惯有很好的文件夹组织方式,而不是糟糕混乱的桌面,经常为找一个文件而不知所措。数据模型就是数据组织和存储方法,它强调从业务、数据存取和使用角度合理存储数据。只有将数据有序的组织和存储起来之后,数据才能得到高性能、低成本、高效率、高质量的使用。 数据仓库建模的最终目的是什么呢?高性能:良好的数据模型能够帮助我们快速查询所需要的数据。低成本:良好的数据模型能减少重复计算,实现计算结果的复用,降低计算成本。高效率:良好的数据模型能极大的改善用户使用数据的体验,提高使用数据的效率。高质量:良好的数据模型能改善数据统计口径的混乱,减少计算错误的可能性。 本课程将基于理论和实践讲解数据仓库,包含基础知识:数据仓库建模方法论、数据仓库分层模型、数据仓库构建流程、事实表、维度表、指标体系、拉链表、维度模型等 ,基于真实电商业务作为实战,讲解电商数仓的整个构建过程,让大家在实战中理解和掌握数仓的理论知识。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧