A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张振纲 中级黑马   /  2012-8-1 14:10  /  1898 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. class Xian extends Thread
  2. {
  3. public void run()
  4. {
  5. for (int i=0;i<100 ;i++ )
  6. {
  7. System.out.println(i);
  8. }
  9. }
  10. }
  11. class Main
  12. {
  13. public static void main(String[] args)
  14. {
  15. Xian x = new Xian();
  16. x.start();
  17. for (int a=0 ;a <100 ;a++ )
  18. {
  19. System.out.println(a);
  20. }
  21. }
  22. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
包晗 + 1 鼓励一下

查看全部评分

7 个回复

正序浏览
  1. class Xian extends Thread
  2. {
  3.         public void run()
  4.         {
  5.                 for (int i=0;i<10 ;i++ )
  6.                 {
  7.                         System.out.println(Thread.currentThread().getName()+i);
  8.                 }
  9.         }
  10. }
  11. class Main
  12. {
  13.         public static void main(String[] args)
  14.         {
  15.                 Xian x = new Xian();
  16.                 x.start();
  17.                 for (int a=0 ;a <10 ;a++ )
  18.                 {
  19.                         System.out.println(Thread.currentThread().getName()+a);
  20.                 }
  21.         }
  22. }
复制代码
这是你的代码,我只改了个数值,加了个获取线程名,没有任何的错误。可能是你的Java文件重复了。

评分

参与人数 1技术分 +1 收起 理由
包晗 + 1 鼓励一下

查看全部评分

回复 使用道具 举报
徐然 黑马帝 2012-8-1 15:35:34
7#
张振纲 发表于 2012-8-1 15:08
我还是不明白,我已经改了java文件的名字了,可是还是提示我这个错误,难道Main.java也不可以使用? ...

那就是你当前目录下还是有一个Thread.java文件,你把这个删了
要不你编译Main.java的时候,读到父类Thread,在当前目录还是能读到Thread.java
回复 使用道具 举报
本帖最后由 刘真 于 2012-8-1 15:35 编辑

我试了一下,把文件名改成Main.java 就行了。
  1. class Xian extends Thread {
  2. public void run() {
  3. for (int i = 0; i < 100; i++) {
  4. System.out.println(i);
  5. }
  6. }
  7. }

  8. class Main {
  9. public static void main(String[] args) {
  10. Xian x = new Xian();
  11. x.start();
  12. for (int a = 0; a < 100; a++) {
  13. System.out.println(a);
  14. }
  15. }
  16. }
复制代码

%9]AZM2D$6J~~$B7U672NVU.jpg (42.35 KB, 下载次数: 18)

运行结果

运行结果

评分

参与人数 1技术分 +1 收起 理由
包晗 + 1 赞一个!

查看全部评分

回复 使用道具 举报
徐然 发表于 2012-8-1 14:59
其实你把你的.java文件的名字随意改一下就行了,
因为你源文件中有名为Thread的父类,而你源文件名字叫Thread ...



我还是不明白,我已经改了java文件的名字了,可是还是提示我这个错误,难道Main.java也不可以使用?
回复 使用道具 举报
其实你把你的.java文件的名字随意改一下就行了,
因为你源文件中有名为Thread的父类,而你源文件名字叫Thread.java
编译器就认为你要从Thread类开始编译,而你代码中并没有Thread类的描述
所以编译器就疯了
回复 使用道具 举报
唐志兵 发表于 2012-8-1 14:25
你的类名为Main,所以你的java文件名也应该为 Main.java.改了之后就能编译了。
...

我把名字改成Main另存,依然报错,错误一样
回复 使用道具 举报

  1. <P>class Xian extends Thread
  2. {
  3.         public void run(){
  4.                 for (int i=0;i<100 ;i++ )
  5.                 {
  6.                         System.out.println(i);
  7.                 }
  8.         }
  9. }

  10. class Main
  11. {
  12.         public static void main(String[] args) {
  13.                 Xian x = new Xian();
  14.                 x.start();
  15.                 for (int a=0 ;a <100 ;a++ ){
  16.                         System.out.println(a);
  17.                 }
  18.         }
  19. }
  20. </P>
复制代码
你的类名为Main,所以你的java文件名也应该为 Main.java.改了之后就能编译了。

评分

参与人数 1技术分 +1 收起 理由
包晗 + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马