java 正则表达式 开头

您是否遇到过这个令人难以置信的错误,想知道如何解决它? 让我们仔细阅读一下,研究如何解决表达式Java非法开头错误。

这是一个动态错误,这意味着编译器会发现某些不符合Java编程规则或语法的内容。 初学者大多会在Java中遇到此错误。 由于它是动态的,因此在编译时即用javac语句提示。

在各种情况下都可能会遇到此错误。 以下是最常见的错误。 解释了如何修复它们。

1.使用访问修饰符为本地变量添加前缀

方法或块内的变量是局部变量。 局部变量在其特定的块或方法内具有范围; 也就是说,除了声明它们的方法之外,不能在类内部的任何地方访问它们。 访问修饰符 :公共,私有和受保护的使用方法在带有局部变量的方法内是非法的,因为其方法范围定义了它们的可访问性。

可以借助示例进行解释:

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 正则表达式 开头

java 正则表达式 开头_如何在Java中修复表达式的非法开头相关推荐

  1. 如何在Java中修复表达式的非法开头

    您是否遇到过这个令人难以置信的错误,想知道如何解决它? 让我们浏览一下这篇文章,研究如何解决表达式Java非法开头错误. 这是一个动态错误,这意味着编译器会发现某些不符合Java编程规则或语法的内容. ...

  2. java soap 头_如何在Java中添加Soap标头

    我有一个来自oracle的NO.net Web服务,要访问,我需要添加soap标头.如何在Java中添加soap标头? Authenticator.setDefault(new ProxyAuthen ...

  3. java实现递归算法_如何在Java中实现二进制搜索算法而无需递归

    java实现递归算法 by javinpaul 由javinpaul 流行的二进制搜索算法的迭代实现,用于在排序数组中查找元素. (An Iterative implementation of the ...

  4. java jcombobox长度_如何在JToolBar中设定JComboBox的大小?

    如何在JToolBar中设定JComboBox的大小? 我设计了一个JToolBar,并且在上边添加了一个JComboBox,可是我发现这个JComboBox长度无法控制,它将JToolBar上剩余空 ...

  5. java 全局数组_如何在Java中声明全局数组?

    我有一个程序在Java中乘以两个矩阵.我在全局错误声明中发现了一些错误. 这里是我的代码如何在Java中声明全局数组? import java.util.Scanner; /**WAP in Java ...

  6. java插入图片_如何在java窗体程序中添加图片

    打开eclipse,创建一个java工程项目,创建完后在src下新建一个类Window,由于要插入图片,所以还在工程目录下创建一个文件夹imgs,里面放了一张60*60的图片,创建后的工程目录和图片, ...

  7. java安卓计时器_如何在android中设置计时器

    通过java.util.Timer和java.util.TimerTask使用计时器的标准Java方法在Android中运行良好,但是你应该知道这个方法创建了一个新线程. 您可以考虑使用非常方便的Ha ...

  8. java cpu监控_如何在Java中监视计算机的CPU,内存和磁盘使用情况?

    问题 我想用Java监视以下系统信息: 当前CPU使用率**(百分比) 可用内存*(免费/总计) 可用磁盘空间(空闲/总计)*请注意,我的意思是整个系统可用的总内存,而不仅仅是JVM. 我正在寻找一种 ...

  9. ubuntu java 关闭进程_如何在Ubuntu中关闭Tomcat?

    问题描述 我试图关闭tomcat,如下所示,但是tomcat似乎仍在运行(http://localhost:8080 /) vandegraff@vandegraff-laptop:~$ /usr/s ...

最新文章

  1. 的标题形状工具在哪里_在PPT中如何用好形状排版
  2. 如何安装树莓派摄像头
  3. tomcat-清除缓存
  4. shell逻辑运算符优先级_ios从入门到放弃之C基础巩固运算符
  5. 一段时间以来的SEO优化结果
  6. IDEA下SpringBoot项目的引用类没问题却提示:java:找不到符号:类**位置:程序包
  7. 【Java】利用容器存储表格数据
  8. ubuntu16.04/20.04 xfce4下面使用护眼软件redshift
  9. [C# 项目实战]: 制作一个备忘录(经典)
  10. 学成在线--18.新增课程(课程分类查询)
  11. 跨年操作--new Date()
  12. 使用KNN时出现非数值属性和缺失值
  13. 方舟服务器在线人数查询软件,时隔4年,方舟生存进化稳居Steam在线人数前十,让他游戏都嫉妒?...
  14. 【jQuery笔记Part1】01-jQuery简介集成
  15. 多进程和线程的区别【转】
  16. 开发者的实用 Vim 插件(二)
  17. Mysql数据库自动备份
  18. navicat12.1.18破解 亲测
  19. [转载]Windows系统的错误报告保存在哪个文件夹里?
  20. 桌面便签软件哪个比较好 好用的手机桌面便签软件推荐

热门文章

  1. P4756-Added Sequence【斜率优化】
  2. P6378-[PA2010]Riddle【2-SAT】
  3. ATcoder-[AGC048B]Bracket Score【结论,贪心】
  4. CF1139D-Steps to One【期望dp,莫比乌斯反演】
  5. [2020.11.27NOIP模拟赛]中位数之中位数【二分,树状数组】
  6. P4782-[模板]2-SAT问题【tarjan】
  7. jzoj4020-Revolution【网络流,最小割】
  8. P4071-[SDOI2016]排列计数【组合计数,错排】
  9. P4231-三步必杀【差分】
  10. P3768 简单的数学题 [狄利克雷卷积,杜教筛,莫比乌斯反演]