2012-10-05 13 views
11

Ho risolto questo problema per ore, provando diverse configurazioni e non ho avuto fortuna. E 'stato scritto in Java, e dispone di 33 errori (abbassato da 50 prima) CodiceErrore del compilatore: "classe, interfaccia o enum attesi"

Fonte:

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

Il log degli errori (compilato in JCreator):

--------------------Configuration: <Default>-------------------- 
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 <= question; z++) 
           ^
H:\Derivative quiz\derivativeQuiz.java:19: class, interface, or enum expected 
     deriv = ""; 
     ^
H:\Derivative quiz\derivativeQuiz.java:20: class, interface, or enum expected 
     if(numExp >= 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. 

Mi sento come questo è un errore di base, eppure non riesco a trovarlo. Se fa la differenza, sto usando JCreator per compilare e tutto è installato correttamente.

UPDATE: ho fissato gli errori coinvolti (dichiarazione della classe e le istruzioni import non corretti (qualcuno è andato indietro e cancellato un paio di punti e virgola))

codice di lavoro:

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

Grazie per tutto l'aiuto

+2

Peccato! PasteBin è bloccato in India :( –

+0

OK, ma è lungo. Rimuoverò alcuni commenti (i più arent 'necessari, lascerò quelli che contengono cose che ho intenzione di implementare in seguito. – Azulflame

+0

Pastebin.com è sotto carico pesante ora: '(Pastebin dovrebbe tornare presto online –

risposta

17

Ti manca la dichiarazione della classe.

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

sbagliato, non è necessario '()' dopo il nome della classe ... – manub

+0

grazie. sapeva che era qualcosa di stupido. Accetterò dopo che il timer mi ha lasciato – Azulflame

7

Ogni metodo deve rientrare in una classe. Il tuo metodo derivativeQuiz non rientra in una classe.

public class ClassName { 

///your methods 
} 
3

hai dimenticato la dichiarazione di classe:

public class MyClass { 
... 
0

Controllare la definizione della propria funzione. Se si dimentica l'utilizzo di "()" dopo la dichiarazione di funzione da qualche parte, si otterrà un sacco di errori con lo stesso formato:

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

E anche che avete dimenticato di chiudere la staffa dopo la vostra estremità di classe o di definizione di funzione. Ma si noti che questa parentesi mancante, non è l'unica ragione per questo tipo di errore.

0

classe, interfaccia, o enum attesi

L'errore di cui sopra è anche possibile quando istruzione import è perdere farro. Una frase corretta è "import com.company.HelloWorld;"

Se per errore durante la scrittura/modifica del codice non viene scritta come "t com.company.HelloWorld;"

compilatore mostrerà "di classe, interfaccia o enum previsto"

-2

la classe principale dovrebbe essere dichiarato nella tua classe come questa:

public class derivativeQuiz_source{ 
    // bunch of methods ..... 

    public static void main(String args[]) 
    { 
     // code 
    } 
} 
+0

come descritto nella domanda (in basso) –

Problemi correlati