编译器错误:“类,接口或枚举预期”

我已经对这个程序进行了几个小时的故障排除,尝试了几种配置,但没有运气。 它是用java编写的,有33个错误(之前降低了50个)

源代码:

/*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 } 

错误日志(在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 <= question; z++) ^ H:\Derivative quiz\derivativeQuiz.java:16: class, interface, or enum expected for(int z = 0; z <= question; z++) ^ 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. 

我觉得这是一个基本的错误,但我似乎无法找到它。 如果它有所作为,我正在使用JCreator进行编译,并且所有内容都已正确安装。

更新:我修复了所涉及的错误(类声明和错误的导入语句(某人返回并删除了一些分号))

工作代码:

 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 } } 

谢谢你的帮助

你错过了课堂宣言。

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

每个方法都应该在一个类中。 你的方法derivativeQuiz在一个类之外。

 public class ClassName { ///your methods } 

你忘了你的class级声明:

 public class MyClass { ... 

看看你的函数的定义。 如果你忘记在函数声明之后使用“()”,你会得到相同格式的大量错误:

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

在您的课程或function定义结束后,您也忘记了结束括号。 但请注意,这些缺失括号,并不是造成此类错误的唯一原因。

class,interface或enum expected

当import语句拼写错误时,甚至可能出现上述错误。 一个恰当的陈述是“import com.company.HelloWorld;”

如果在编写/编辑代码时错误地写错了“t com.company.HelloWorld;”

编译器将显示“class,interface或enum expected”

主类应该在你的类中声明如下:

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