黑马程序员技术交流社区
标题:
为什么编译不出错,运行时出错?新人求指点
[打印本页]
作者:
luke_yang
时间:
2015-1-7 13:51
标题:
为什么编译不出错,运行时出错?新人求指点
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-7 23:31
看看你的环境变量有没有配好? 再就是类名是不是打错了
作者:
luke_yang
时间:
2015-1-8 08:22
谢谢 大家 我知道错误在哪里了 少了一个 public
加一个public class a_2 就可以了
作者:
czwanglei
时间:
2015-1-8 14:25
比较奇怪,我的电脑上可以运行的。但是那个2后面多了一个逗号。
作者:
MengDeKaiShi
时间:
2015-1-9 21:42
新手上路
作者:
Awizard
时间:
2015-1-9 23:20
包的原因么?
作者:
d7142947
时间:
2015-1-9 23:48
编译只检查代码是不是符合规范
作者:
dream_style
时间:
2015-1-10 13:48
类名,怎么可以小写
作者:
dream_style
时间:
2015-1-10 13:50
类名要大写,main函数所属的类名和文件名要相同
作者:
Jason996
时间:
2015-1-10 22:54
看报错是类名有问题
作者:
孤影恋红尘
时间:
2015-1-12 08:49
有没有QQ群之类的?大家方便交流啊
作者:
陈胜华
时间:
2015-1-12 15:37
类名出现错误了。。"class a_2 "
作者:
arlenliu
时间:
2015-1-12 15:41
本帖最后由 arlenliu 于 2015-1-12 17:25 编辑
java中规定文件名必须跟public类的类名保持一致,main 方法是程序的入口,JVM只会寻找main方法,包含main方法的类最好是public的且只能有一个是public的,只有一个类的时候可以省略。看你报错的情况应该是这方面的问题。但是我运行下来没报错呀,什么错误提示都没有,正常运行……
作者:
liqudely
时间:
2015-1-12 16:39
类名,怎么可以小写类名,怎么可以小写
作者:
齐弦
时间:
2015-1-12 19:36
数组中多了个逗号
作者:
Joseph_liuxh
时间:
2015-1-12 20:46
我看见类名是小写的,类名首字母一定要是大写的。
作者:
da_chuan
时间:
2015-1-12 21:49
public是可以省略的啊
作者:
流星划过的黎明
时间:
2015-2-3 19:41
如果你你用的是docs命令行编译运行的话,请务必检查您的文件名和您的类名是否保持一致,如果不一致的话,运行的时候请用.class文件的名字调用java虚拟机运行
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2