Jak rozwiązać nielegalny błąd wyrażenia Java

Jak rozwiązać nielegalny błąd wyrażenia Java
W Javie istnieją ustalone reguły do ​​odpowiednio wykonywania funkcji. Nieprzestrzeganie tego może spowodować ograniczenia. W takim przypadku „Java nielegalny początek wyrazu„Błąd można napotykać w czasie kompilacji, gdy kompilator wykrywa konkretne stwierdzenie, które nie są odpowiednio przestrzegane przez reguły lub składnię.

Ten blog omówi przypadki spotkania i rozwiązywania ograniczeń „Java Nielegalne rozpoczęcie wyrażenia”.

Jak rozwiązać błąd „Java nielegalny początek wyrażenia”?

„„Java nielegalny początek wyrazu„Ograniczenie można się przedstawić z następujących głównych powodów:

  • Brakuje kręconego ”" Aparat ortodontyczny.
  • Metody zagnieżdżone.
  • "zwęglać" Lub "Strunowy" Bez cytatów.
  • Modyfikator dostępu do metody.
  • Klasa posiadająca modyfikator dostępu wewnątrz metody.

Przypadek 1: Brak klęscy „”

Pomijanie kręconego klamry w metodzie może spowodować „Nielegalny początek wyrazu„W Javie wystąpi.

Demonstracja
Przejrzyjmy następujące wiersze kodu, które pokazują występowanie omówionego ograniczenia:

Klasa publiczna nielegalExpression1
public static void printMultiply (int a, int b)
System.na zewnątrz.println (a * b);
public static void main (string [] args)
PrintMultiply (2, 3);

W powyższym fragmencie kodu można zaobserwować, że nie określono aparatu zamykającego określonej funkcji. Dlatego spowoduje spotkanie z omawianym ograniczeniem.

Wyjście

Zgodnie z zaobserwowano, że brakujący aparat zamykający funkcję spowodował zarejestrowany błąd.

Rozwiązanie
Aby rozwiązać ograniczenie, po prostu umieść brakujący aparat zamykający funkcję, a błąd zniknie w następujący sposób:

Przypadek 2: Metody zagnieżdżone

Omówiono ograniczenie można również stawić czoła ze względu na metodę zagnieżdżoną w innej metodzie, ponieważ Java jej nie popiera.

Demonstracja
Poniższy przykład pokazuje ten przypadek stawienia czoła błędu:

Klasa publiczna ALLAMALEXPESPression2
public static void printMultiply (int a, int b)
System.na zewnątrz.println („Mnożenie to:”+ mult (a, b));
public static int mult (int a, int b)
zwrócić * b;

public static void main (string [] args)
PrintMultiply (2,3);

Zgodnie z powyższymi wierszami kodu wykonaj następujące kroki:

  • Zdefiniuj funkcję o nazwie „printMultiply ()„Zwracanie mnożenia liczby poprzez wywołanie zagnieżdżonej funkcji”mult ()".
  • W funkcji zagnieżdżonej pomnóż przekazane liczby.
  • Wreszcie w „główny()”Metoda, wywołać funkcję mnożenia.

Wyjście

Ten wynik oznacza, że ​​błąd został napotkany ze względu na metodę zagnieżdżoną w innej metodzie.

Rozwiązanie
Aby poradzić sobie z ograniczeniem w tym przypadku, oddziel zagnieżdżoną funkcję, umieszczając zamykającą klamę poprzedniej funkcji przed zagnieżdżoną, eliminując w ten sposób zachowanie gniazdowania:

Przypadek 3: „char” lub „ciąg” bez cytatów

Jak "zwęglać„Wartość jest zamknięta w pojedynczych cytatach i„Strunowy”W podwójnych cytatach. Dlatego inicjalizacja tych wartości bez odpowiednich cytatów może również skutkować stawieniem się na omawiany błąd.

Demonstracja
Poniższy blok kodu można rozważyć w celu stawiania czoła „Java nielegalny początek wyrazu„Błąd w tym przypadku:

Klasa publiczna nielegalExpression3
public static void main (string [] args)
Ciąg x = java;
char y = a;
System.na zewnątrz.println (x);
System.na zewnątrz.println (y);

W tym kodzie zainicjuj „Strunowy" I "zwęglać”Wartości bez podwójnych i pojedynczych cytatów i wyświetlanie.

Wyjście

Ten wynik wskazuje, że błąd skierowany jest wynikiem brakujących odpowiednich cytatów.

Rozwiązanie
Aby uporządkować omawiany błąd w tym scenariuszu, po prostu załóż zainicjowane „Strunowy" I "zwęglać”Wartości odpowiednio w podwójnych i pojedynczych cytatach:

Przypadek 4: Modyfikator dostępu w ramach metody

W Javie, w ramach metody lub konstruktora, tylko „lokalny„Zmienne można zdefiniować. „„Modyfikator dostępu”W przypadku zmiennych lokalnych nie można określić w metodzie, ponieważ ich dostępność jest przydzielana przez zakres metody. Dlatego brak tego może również spowodować spotkanie z omawianym błędem.

Demonstracja
Poniższy kod wyjaśnia ten konkretny przypadek:

Klasa publiczna ALLAMALEXPESPression4
public static void printMultiply (int a, int b)
private int pomnóż = a * b;
System.na zewnątrz.println („mnożenie staje się:” + pomnóż);

public static void main (string [] args)
PrintMultiply (3,2);

Zgodnie z powyższymi wierszami kodu:

  • Po pierwsze, zdefiniuj funkcję o nazwie „printMultiply ()„Posiadanie„publiczny" zakres.
  • W swojej definicji określ zmienną o „prywatny”Zakres i wyświetl mnożenie przekazanych argumentów.
  • Wreszcie w „główny()”Metoda, wywołuj zdefiniowaną funkcję.

Wyjście

Jak wskazano, konfliktowy modyfikator dostępu zainicjowanej zmiennej spowodował rejestrowanie omówionego ograniczenia.

Rozwiązanie
Aby rozwiązać ten błąd, pomiń modyfikator dostępu do zmiennej lokalnej, a błąd zostanie sortowany:

Przypadek 5: Klasa posiadająca modyfikator dostępu wewnątrz metody

Klasa zdefiniowana w metodzie w Javie obejmuje „lokalny" zakres. Stąd nie można go zdefiniować za pomocą modyfikatora dostępu. Jest takie, że zakres tej klasy będzie ograniczony tylko w ramach metody.

Demonstracja
Przeglądajmy następujący kod, w wyniku czego stawiano czoła „Java nielegalny początek wyrazu" błąd:

Klasa publiczna ALLAMALEXpression5
public static void main (string [] args)
Samochód z klasy publicznej
Samochód()
System.na zewnątrz.println („To jest klasa!");

Car X = nowy samochód ();

W tym kodzie:

  • Zdefiniuj wewnętrzną klasę o nazwie „Samochód”W metodzie określonej za pomocą modyfikatora dostępu, i.mi., "publiczny".
  • W definicji klasy utwórz konstruktor klas wyświetlający podany komunikat.
  • Na koniec utwórz obiekt klasy o nazwie „X" używając "nowy”Słowo kluczowe i„Samochód()”Konstruktor odpowiednio.

Wyjście

Wyżej wygenerowany błąd jest wynikiem określonego modyfikatora dostępu z klasą wewnętrzną.

Rozwiązanie
Aby ustalić błąd zwrócony w tym przypadku, po prostu usuń modyfikator dostępu przydzielony do klasy wewnętrznej, a ograniczenie znika, a tym samym odpowiednio wywołując klasę wewnętrzną:

Chodziło o spotkanie i radzenie sobie z „Java nielegalny początek wyrazu" błąd.

Wniosek

„„Java nielegalny początek wyrazu„Błąd można rozwiązać poprzez umieszczenie odpowiednich kręconych aparatów ortodontycznych, unikając zagnieżdżonych metod, inicjalizację„zwęglać" Lub "Strunowy”Wartości z odpowiednimi cytatami lub powstrzymanie się od modyfikatora dostępu ze zmienną lub klasą w metodzie. W tym blogu omówiono scenariusze, z którymi można się zmierzyć i rozwiązać ograniczenie „Java Nielegalne rozpoczęcie wyrażenia”.