//源程序
import java.io.*;
import java.lang.Math;class equation
{
private int a;
private int b;
private int c;
public equation()
{
try
        {
           System.out.print("请输入第一个系数:");
           BufferedReader ba = new BufferedReader(new InputStreamReader(System.in)); 
           String digit = ba.readLine();
           this.a = Integer.parseInt(digit);
        
           System.out.print("\n请输入第二个系数:");
           BufferedReader bb = new BufferedReader(new InputStreamReader(System.in)); 
           digit = bb.readLine(); 
           this.b = Integer.parseInt(digit);
       
           System.out.print("\n请输入第三个系数:");
           BufferedReader bc = new BufferedReader(new InputStreamReader(System.in)); 
           digit = bc.readLine();
           this.c = Integer.parseInt(digit);
        }
        catch(IOException e)
{
System.out.println(e);
}
}
public void showEquation()
{
System.out.println("你输入的方程是:"+a+"X*X"+"+"+b+"X"+"="+"0");
}
public void qiujieEquation()
{
double dir;
        dir = (double)(b*b-4*a*c);
        if(dir >= 0)
        {
System.out.println("\n方程的根是:"+(-b+Math.sqrt(dir))/(2*a)+"和"+(-b-Math.sqrt(dir))/2*a);
        }
        else
        {
           System.out.println("\n此方程无解!");
}
}
}public class Equation
{
public static void main(String[] args)
{
equation Eqt=new equation();
Eqt.showEquation();
Eqt.qiujieEquation();
}
}编译通过,运行有错误
以下是错误提示:
java.lang.NoClassDefFoundError: equation (wrong name: Equation)
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)
at Equation.main(Equation.java:56)
Exception in thread "main"

解决方案 »

  1.   

    我把第一个类名该成quation 就可以了,我觉得是两个类的名字只有大小写区别导致错误的import java.io.*;
    import java.lang.Math;class quation
    {
    private int a;
    private int b;
    private int c;
    public quation()
    {
    try
            {
               System.out.print("请输入第一个系数:");
               BufferedReader ba = new BufferedReader(new InputStreamReader(System.in)); 
               String digit = ba.readLine();
               this.a = Integer.parseInt(digit);
            
               System.out.print("\n请输入第二个系数:");
               BufferedReader bb = new BufferedReader(new InputStreamReader(System.in)); 
               digit = bb.readLine(); 
               this.b = Integer.parseInt(digit);
           
               System.out.print("\n请输入第三个系数:");
               BufferedReader bc = new BufferedReader(new InputStreamReader(System.in)); 
               digit = bc.readLine();
               this.c = Integer.parseInt(digit);
            }
            catch(IOException e)
    {
    System.out.println(e);
    }
    }
    public void showEquation()
    {
    System.out.println("你输入的方程是:"+a+"X*X"+"+"+b+"X"+"="+"0");
    }
    public void qiujieEquation()
    {
    double dir;
            dir = (double)(b*b-4*a*c);
            if(dir >= 0)
            {
    System.out.println("\n方程的根是:"+(-b+Math.sqrt(dir))/(2*a)+"和"+(-b-Math.sqrt(dir))/2*a);
            }
            else
            {
               System.out.println("\n此方程无解!");
    }
    }
    }public class Equation
    {
    public static void main(String[] args)
    {
    quation Eqt=new quation();
    Eqt.showEquation();
    Eqt.qiujieEquation();
    }
    }