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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class a_2
{
        public static void main(String[] args)
        {
                int[][]arr={{3,5,1,7},{2,3,5,8},{6,1,8,2,}};
                int sum=0;
                for(int x=0;x<arr.length;x++){
                        for(int y=0;y<arr[x].length;y++){
                                sum=sum+arr[x][y];
                        }
                }
                System.out.println(sum);       
        }
}
运行时出错,如下:
/**Exception in thread "main" java.lang.NoClassDefFoundError: 1
Caused by: java.lang.ClassNotFoundException: 1
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: 1.  Program will exit.
*/

点评

希望你的问题更快解决  发表于 2015-1-9 18:30

18 个回复

正序浏览
如果你你用的是docs命令行编译运行的话,请务必检查您的文件名和您的类名是否保持一致,如果不一致的话,运行的时候请用.class文件的名字调用java虚拟机运行
回复 使用道具 举报
public是可以省略的啊
回复 使用道具 举报
我看见类名是小写的,类名首字母一定要是大写的。
回复 使用道具 举报
数组中多了个逗号
回复 使用道具 举报
类名,怎么可以小写类名,怎么可以小写
回复 使用道具 举报
本帖最后由 arlenliu 于 2015-1-12 17:25 编辑

java中规定文件名必须跟public类的类名保持一致,main 方法是程序的入口,JVM只会寻找main方法,包含main方法的类最好是public的且只能有一个是public的,只有一个类的时候可以省略。看你报错的情况应该是这方面的问题。但是我运行下来没报错呀,什么错误提示都没有,正常运行……
回复 使用道具 举报
类名出现错误了。。"class a_2 "
回复 使用道具 举报
有没有QQ群之类的?大家方便交流啊
回复 使用道具 举报
看报错是类名有问题
回复 使用道具 举报
dream_style 来自手机 中级黑马 2015-1-10 13:50:39
9#
类名要大写,main函数所属的类名和文件名要相同
回复 使用道具 举报
dream_style 来自手机 中级黑马 2015-1-10 13:48:46
8#
类名,怎么可以小写
回复 使用道具 举报
编译只检查代码是不是符合规范
回复 使用道具 举报
包的原因么?
回复 使用道具 举报
新手上路
回复 使用道具 举报
比较奇怪,我的电脑上可以运行的。但是那个2后面多了一个逗号。
回复 使用道具 举报
谢谢 大家  我知道错误在哪里了   少了一个 public
加一个public  class a_2 就可以了
回复 使用道具 举报
看看你的环境变量有没有配好? 再就是类名是不是打错了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马