Compiler error: “class, interface, or enum expected”

匿名 (未验证) 提交于 2019-12-03 02:20:02

问题:

I have been troubleshooting this program for hours, trying several configurations, and have had no luck. It has been written in java, and has 33 errors (lowered from 50 before)

Source Code:

/*This program is named derivativeQuiz.java, stored on a network drive I have permission to edit The actual code starts below this line (with the first import statement) */ import java.util.Random; import java.Math.*; import javax.swing.JOptionPane; public static void derivativeQuiz(String args[]) {     // a bunch of code } 

The error log (compiled in JCreator):

--------------------Configuration: -------------------- H:\Derivative quiz\derivativeQuiz.java:4: class, interface, or enum expected public static void derivativeQuiz(String args[])               ^ H:\Derivative quiz\derivativeQuiz.java:9: class, interface, or enum expected     int maxCoef = 15;     ^ H:\Derivative quiz\derivativeQuiz.java:10: class, interface, or enum expected     int question = Integer.parseInt(JOptionPane.showInputDialog(null, "Please enter the number of questions you wish to test on: "));     ^ H:\Derivative quiz\derivativeQuiz.java:11: class, interface, or enum expected     int numExp = Integer.parseInt(JOptionPane.showInputDialog(null, "Please enter the maximum exponent allowed (up to 5 supported):" ));     ^ H:\Derivative quiz\derivativeQuiz.java:12: class, interface, or enum expected     Random random = new Random();     ^ H:\Derivative quiz\derivativeQuiz.java:13: class, interface, or enum expected     int coeff;     ^ H:\Derivative quiz\derivativeQuiz.java:14: class, interface, or enum expected     String equation = "";     ^ H:\Derivative quiz\derivativeQuiz.java:15: class, interface, or enum expected     String deriv = "";     ^ H:\Derivative quiz\derivativeQuiz.java:16: class, interface, or enum expected     for(int z = 0; z = 5)         ^ H:\Derivative quiz\derivativeQuiz.java:23: class, interface, or enum expected             equation = coeff + "X^5 + ";             ^ H:\Derivative quiz\derivativeQuiz.java:24: class, interface, or enum expected             deriv = coeff*5 + "X^4 + ";             ^ H:\Derivative quiz\derivativeQuiz.java:25: class, interface, or enum expected         }         ^ H:\Derivative quiz\derivativeQuiz.java:29: class, interface, or enum expected             equation = equation + coeff + "X^4 + ";             ^ H:\Derivative quiz\derivativeQuiz.java:30: class, interface, or enum expected             deriv = deriv + coeff*4 + "X^3 + ";             ^ H:\Derivative quiz\derivativeQuiz.java:31: class, interface, or enum expected         }         ^ H:\Derivative quiz\derivativeQuiz.java:35: class, interface, or enum expected             equation = equation + coeff + "X^3 + ";             ^ H:\Derivative quiz\derivativeQuiz.java:36: class, interface, or enum expected             deriv = deriv + coeff*3 + "X^2 + ";             ^ H:\Derivative quiz\derivativeQuiz.java:37: class, interface, or enum expected         }         ^ H:\Derivative quiz\derivativeQuiz.java:41: class, interface, or enum expected             equation = equation + coeff + "X^2 + ";             ^ H:\Derivative quiz\derivativeQuiz.java:42: class, interface, or enum expected             deriv = deriv + coeff*2 + "X + ";             ^ H:\Derivative quiz\derivativeQuiz.java:43: class, interface, or enum expected         }         ^ H:\Derivative quiz\derivativeQuiz.java:47: class, interface, or enum expected             equation = equation + coeff + "X + ";             ^ H:\Derivative quiz\derivativeQuiz.java:48: class, interface, or enum expected             deriv = deriv + coeff;             ^ H:\Derivative quiz\derivativeQuiz.java:49: class, interface, or enum expected         }         ^ H:\Derivative quiz\derivativeQuiz.java:53: class, interface, or enum expected             equation = equation + coeff;             ^ H:\Derivative quiz\derivativeQuiz.java:54: class, interface, or enum expected              if(deriv == "")             ^ H:\Derivative quiz\derivativeQuiz.java:57: class, interface, or enum expected             }             ^ H:\Derivative quiz\derivativeQuiz.java:114: class, interface, or enum expected     JOptionPane.showMessageDialog(null, "Question " + z + "\\" + question + "\nDerivative: " + deriv);     ^ H:\Derivative quiz\derivativeQuiz.java:115: class, interface, or enum expected     }     ^ 33 errors  Process completed. 

I feel like this is a basic error, and yet I can't seem to find it. If it makes a difference, I am using JCreator to compile and everything is installed correctly.

UPDATE: I have fixed the errors involved (Class declaration and incorrect import statements (someone went back and deleted a few semicolons))

Working code:

import java.util.Random; import javax.swing.JOptionPane; import java.lang.String; public class derivativeQuiz_source{ public static void main(String args[]) {     //a bunch more code } } 

Thanks for all the help

回答1:

You miss the class declaration.

public class DerivativeQuiz{    public static void derivativeQuiz(String args[]){ ... } } 


回答2:

Every method should be within a class. Your method derivativeQuiz is outside a class.

public class ClassName {   ///your methods } 


回答3:

You forgot your class declaration:

public class MyClass { ... 


回答4:

Look at your function s definition. If you forget using "()" after function declaration somewhere, you ll get plenty of errors with the same format:

 ... ??: class, interface, or enum expected ... 

And also you have forgot closing bracket after your class or function definition ends. But note that these missing bracket, is not the only reason for this type of error.



回答5:

class, interface, or enum expected

The above error is even possible when import statement is miss spelled. A proper statement is "import com.company.HelloWorld;"

If by mistake while code writing/editing it is miss written like "t com.company.HelloWorld;"

compiler will show "class, interface, or enum expected"



回答6:

the main class should be declared in the your class like this :

public class derivativeQuiz_source{     // bunch of methods .....      public static void main(String args[])     {         // code      } } 


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!