Maison >Java >javaDidacticiel >Pourquoi est-ce que j'obtiens l'erreur du compilateur Java \'\'.class\' attendue\' ?

Pourquoi est-ce que j'obtiens l'erreur du compilateur Java \'\'.class\' attendue\' ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-21 04:45:14755parcourir

Why am I getting the Java compiler error

Comprendre l'erreur : .class attendu

L'erreur "erreur : '.class' attendu" se produit lors de la compilation lorsque le compilateur rencontre un tapez (par exemple, int ou int[]) où il anticipe une expression. Syntaxiquement, cela signifie que les seuls symboles acceptables seraient . suivi de la classe.

Causes de l'erreur

Cette erreur se produit en raison d'une confusion du compilateur. La vérification de la syntaxe détecte un type dans lequel une expression est attendue, ce qui entraîne le message attendu « .class ».

Exemple d'erreur

double d = 1.9;
int i = int d;  // error: '.class' expected
         ^

Résolution l'erreur

  • Typecast : si vous avez l'intention de taper cast, placez le type entre parenthèses :

    double d = 1.9;
    int i = (int) d;  // Correct: type casts `1.9` to an integer
  • Supprimer le type : si vous souhaitez attribuer une valeur ou transmettre un paramètre, supprimez le tapez :

    int j = someFunction(a);  // Correct ... assuming 'a' type is compatible for the call.

Supplémentaire Exemples

  • Référence du tableau :

    someMethod(array[]);

    Corrigez-le en :

    someMethod(array);  // pass reference to the entire array

    ou

    someMethod(array[someExpression]);  // pass a single array element
  • Déclaration des paramètres dans la méthode Appel :

    int i = someMethod(int j);  // Error

    Supprimer la déclaration du paramètre :

    int i = someMethod(j);
  • Déclaration du point-virgule dans le tableau :

    int[]; letterCount = new int[26];

    Supprimer le point-virgule :

    int[] letterCount = new int[26];
  • Type Declarator au lieu d'expression :

    return integers[];

    Renvoie le tableau entier ou un élément spécifique élément :

    return integers;  

    ou

    return integers[someIndex];  // Return one element of the array
  • Accolades manquantes :

    if ((withdraw % 5 == 0) && (acnt_balc >= withdraw + 0.50))
      double cur = acnt_balc - (withdraw + 0.50);
      System.out.println(cur);
    else
      System.out.println(acnt_balc);

    Joignez le "puis " déclarations avec accolades :

    if ((withdraw % 5 == 0) && (acnt_balc >= withdraw + 0.50)) {
      double cur = acnt_balc - (withdraw + 0.50);
      System.out.println(cur);
    } else {
      System.out.println(acnt_balc);
    }

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn