Een identificatie verwacht fout is een veel voorkomende fout waarmee beginners te maken krijgen. In deze sectie zullen we bespreken wat is de verwachte fout van de identificatie , de redenen voor het optreden van fouten, En hoe u de verwachte fout in Java kunt oplossen. Voordat we eerst naar de fout gaan, zullen we het begrijpen wat zijn identificatiegegevens in Java .
Identificatiegegevens op Java zijn symbolische namen die worden gebruikt voor identificatie. Ze kunnen een klassenaam, variabelenaam, methodenaam, pakketnaam, constante naam , enz. Echter, In Java , zijn er enkele gereserveerde woorden die niet als identificatie kunnen worden gebruikt, zoals int, const, new, double, enum, enz.
Wat is een verwachte fout bij een ID?
Het is een veel voorkomende compilatiefout die optreedt tijdens het compileren.
java hallo wereld
Laten we het volgende Java-programma eens bekijken.
IdentifierError.java
public class IdentifierError { System.out.println('javatpoint'); }
Wanneer we het bovenstaande programma proberen te compileren, krijgen we de volgende foutmelding.
De code ziet er goed uit, maar dat is niet zo. Omdat de printverklaring niet de juiste plaats is. Het moet zich in een methode/blok bevinden. Laten we de code in een methode verpakken en vervolgens compileren en uitvoeren.
IdentifierError.java
public class IdentifierError { public static void main(String args[]) { System.out.println('javatpoint'); } }
Uitgang:
javatpoint
Redenen voor het optreden van fouten
Er kunnen de volgende redenen zijn waarom de fout optreedt:
wat is modulo in c++
- Het treedt op wanneer de code niet voldoet aan de Java-syntaxisregels.
- Een codeblok dat rechtstreeks in de klassenbody is geschreven in plaats van in een methode of blok.
- Er kunnen extra accolades aanwezig zijn.
- De code staat niet op de juiste plaats.
- Elke verklaring moet aan het eind een puntkomma hebben.
Hoe fouten herstellen/oplossen?
- Vergeet niet een puntkomma aan het einde van de verklaring te plaatsen.
- Plaats geen code rechtstreeks in de hoofdtekst van de klasse.
- Het aanroepen van methoden moet binnen een methode, constructor of statische initialisatie plaatsvinden.
- Schrijf een blok code op de juiste plaats.
- Verwijder extra accolades.
IdentifierErrorVoorbeeld1.java
public class IdentifierErrorExample1 { public static void main(String args[]) { System.out.println('Python'); } System.out.println('MySql'); System.out.println('Java'); } }
Laten we de bovenstaande code compileren. We krijgen de verwachte fout.
Observeer de bovenstaande code, we zien dat er een extra accolade is die de reden is om een fout te genereren. De fout kan worden verholpen door een extra accolade op regel 6 te verwijderen.
De fout treedt ook op als we een puntkomma in plaats van een komma plaatsen tijdens het definiëren van waarden opsomming . Neem bijvoorbeeld de volgende code.
IdentifierErrorVoorbeeld2.java
public class IdentifierErrorExample2 { public enum Vegetables { eggplant, tomato, broccoli; } public static void main(String args[]) { for(Vegetables veg : Vegetables.values()) System.out.println(veg); } }
Laten we de bovenstaande code uitvoeren. we krijgen de verwachte fout van de identificatie.
Om de fout op te lossen, verwijdert u puntkomma's uit de opsommingswaarden.
hritik roshan-leeftijd
public enum Vegetables { eggplant, tomato, broccoli; }
Soms kan de fout veel groter zijn. Beschouw de volgende code.
IdentifierErrorExample3.java
import java.util.Arrays; public class IdentifierErrorExample3 { int[] primes = {17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73}; int max_val; max_val = nums[0]; for (int i = 1; i max_val) { max_val = primes[i]; } } System.out.println('Primes Numbers are: ' + Arrays.toString(primes)); System.out.println('Largest Prime is: ' + max_val); }
Laten we de bovenstaande code compileren.
We krijgen te veel fouten omdat sommige instructies rechtstreeks in de hoofdtekst van de klasse worden geschreven. Om de fout op te lossen, schrijft u het hele codeblok in een methode, compileert u het en voert u het uit.
IdentifierErrorVoorbeeld4.java
import java.util.Arrays; public class IdentifierErrorExample4 { public static void main(String args[]) { int[] primes = {17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73}; int max_val; max_val = primes[0]; for (int i = 1; i max_val) { max_val = primes[i]; } } System.out.println('Primes Numbers are: ' + Arrays.toString(primes)); System.out.println('Largest Prime is: ' + max_val); } }
Uitgang: