我的代码如下:
package chapter4;/**
 * @author Administrator
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */public class Factorial_4_1 { public static void main(String[] args) {
try{
int n;
//n=Integer.valueOf(args[0]).intValue();
    //Integer.valueOf(args[0]).intValue();
System.out.println("The result is:"+calFactorial(5));
//calFactorial(5);
}catch(NumberFormatException e){
System.out.println("Invalid input value:"+e.getMessage());
System.out.println("The input value must be integers.");
}
 catch(IllegalArgumentException e){
  System.out.println("Invalid input value:"+e.getMessage());
  System.out.println("The input value must be positive number");
}}
public static int calFactorial (int n)
{ int init=1,result=1;
for(;init<=n;init++)
{
result=result*init;
}
return result;
}
}在eclipse里面得到计算结果是120,可是在命令行界面里编译可以通过,但是一执行如下命令:
java Factorial_4_1 就要报错,如下所示:G:\java\myWorkSpace\myJava\chapter4>java Factorial_4_1
Exception in thread "main" java.lang.NoClassDefFoundError: Factorial_4_1 (wrong name: chapter4/Factorial_4_1)
        at java.lang.ClassLoader.defineClass0(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        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)请问这是怎么回事呢?