如何在Java中修复表达式的非法开头
您是否遇到過這個令人難以置信的錯誤,想知道如何解決它? 讓我們瀏覽一下這篇文章,研究如何解決表達式Java非法開頭錯誤。
這是一個動態錯誤,這意味著編譯器會發現某些不符合Java編程規則或語法的內容。 初學者大多會遇到Java中的此錯誤。 由于它是動態的,因此在編譯時即用javac語句提示。
在各種情況下都可能會遇到此錯誤。 以下是最常見的錯誤。 解釋了如何修復它們。
1.使用訪問修飾符為本地變量添加前綴
方法或塊內的變量是局部變量。 局部變量在其特定的塊或方法內具有范圍; 也就是說,除了聲明它們的方法之外,不能在類內部的任何地方訪問它們。 訪問修飾符 :在方法內部使用帶有局部變量的訪問修飾符 public,private和protected是非法的,因為其方法范圍定義了它們的可訪問性。
可以借助示例進行解釋:
Class LocalVar { public static void main(String args[]) { int variable_local = 10 } } 將修飾符與局部變量一起使用會產生錯誤2.另一方法內部的方法
一個方法在其范圍內不能有另一個方法 。 在另一個方法中使用一個方法會引發“表達式的非法起始”錯誤。 無論使用帶有功能名稱的訪問修飾符,都會發生該錯誤。
下面是代碼的演示:
Class Method { public static void main (String args[]) { public void calculate() { } } } 內部定義一個方法而另一個方法是非法的 Class Method { public static void main (String args[]) { void calculate() { } } } 該錯誤不僅僅取決于修飾符的出現3.方法內的類必須沒有修飾符
同樣,方法可以在其主體內部包含一個類。 這是合法的,因此在編譯時不會出錯。 但是,使注釋類不是以訪問修飾符開頭的,因為修飾符不能存在于方法內部。
在下面的示例中,Car類在main方法內部定義; 此方法在Vehicle類中。 在類Car上使用public修飾符會在運行時出現錯誤,因為修飾符一定不能出現在方法中。
class Vehicle { public static final void main(String args[]) { public class Car { } } } 不允許在方法內部聲明帶有修飾符的類4.缺少大括號“ {}”
跳過任何方法塊的花括號都可能導致出現“表達式的非法開始”錯誤。 由于每個語法或Java編程規則都會出錯,因為每個塊或類定義必須以大括號開頭和結尾,因此將發生錯誤。 開發人員可能還需要根據程序要求定義另一個類或方法。 反過來,定義另一個類或方法也將具有修飾符,這對于方法主體是非法的。
在下面的代碼中,考慮類Addition,方法main將兩個數字相加并存儲在變量sum中。 然后,使用displaySum方法打印結果。 由于方法main末尾缺少花括號,因此會在終端上顯示錯誤。
public class Addition { static int sum; public static void main(String args[]) { int x = 8; int y= 2; sum=0; sum= x + y; { System.out.println("Sum = " + sum); } } 塊定義中缺少大括號會導致錯誤。5.不帶雙引號的字符串字符“”
不使用雙引號初始化字符串變量是Java的許多新手經常犯的錯誤,因為他們往往會忘記雙引號,但后來當錯誤在運行時彈出時會感到困惑。 具有String數據類型的變量必須用雙引號引起來,以避免其代碼中的“表達式的非法開始”錯誤。
String變量是一個字符序列。 字符可能不只是字母,它們也可以是數字,也可以是特殊字符,例如@,$,&,*,_,-,+,?,/等。因此,請將字符串變量括在雙引號內,以避免一個錯誤。
考慮下面的示例代碼; 變量運算符的值周圍缺少引號在運行時生成錯誤。
import java.util.*; public class Operator { public static void main(String args[]) { int a = 10; int b = 8; int result =0; Scanner scan = new Scanner(System.in); System.out.println("Enter the operation to be performed"); String operator= scan.nextLine(); if(operator == +) {result = a+b; }else if(operator == -) {result = a-b;}else { System.out.prinln("Invalid Operator"); }System.out.prinln("Result = " + result); } 字符串值必須用雙引號引起來,以避免上述錯誤6.總結
綜上所述,當Java編譯器在執行時發現與源代碼不適當的內容時,會發生“表達式的非法起始”錯誤。 要調試此錯誤,請嘗試查看錯誤消息前的各行中是否缺少括號,花括號或分號,然后檢查語法。
有用的提示:請記住,在某些情況下,單個語法錯誤有時會導致多個“表達式的非法開頭”錯誤。 因此,請評估錯誤的根本原因,并在修復錯誤時始終重新編譯,這意味著避免在每一步都進行多次更改而無需編譯。
7.下載源代碼
下載您可以在此處下載本文的完整源代碼: 如何在Java中修復表達式的非法開頭
翻譯自: https://www.javacodegeeks.com/how-to-fix-illegal-start-of-expression-in-java.html
總結
以上是生活随笔為你收集整理的如何在Java中修复表达式的非法开头的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 孙悟空的品质是什么(西游记孙悟空身上有哪
- 下一篇: 笔记本换显卡有意义吗