在catch代码附近的Java代码中“错放了构造”(“misplaced construct(s)” in Java code near a catch)

我无法在Java中编译以下代码,错误是:错误的构造(s)。 怎么了?

public class ExceptionsTutorial {

public static void main(String[] argv) throws Exception{

try{

System.out.println("A");

try{

System.out.println("B");

throw new Exception("1");

}

catch{

System.out.println("C");

throw new Exception("2");

}

finally{

System.out.println("D");

throw new Exception("3");

}

}

finally{

System.out.println("F");

}

}

}

I could not compile the following code in Java, error is: misplaced construct(s). What's wrong?

public class ExceptionsTutorial {

public static void main(String[] argv) throws Exception{

try{

System.out.println("A");

try{

System.out.println("B");

throw new Exception("1");

}

catch{

System.out.println("C");

throw new Exception("2");

}

finally{

System.out.println("D");

throw new Exception("3");

}

}

finally{

System.out.println("F");

}

}

}

原文:https://stackoverflow.com/questions/1690353

更新时间:2019-12-16 13:09

最满意答案

catch必须声明它捕获的异常:

catch (Exception E) {

System.out.println("C");

throw new Exception("2");

}

catch must declare what exception it catches:

catch (Exception E) {

System.out.println("C");

throw new Exception("2");

}

2009-11-06

相关问答

是的,尝试(使用Java)不会有任何性能影响。 编译器不会为try块生成虚拟机语句。 它只记录try块处于活动状态的程序计数器,并将该信息附加到类文件中的方法中。 然后,当引发异常时,VM展开堆栈并检查每个帧中该帧中的程序计数器是否在相关的try块中。 这(与建立堆栈跟踪一起)成本很高,因此捕获成本很高。 但是,尝试是免费的:)。 但是,对于常规控制流使用异常并不是一个好习惯。 您的代码执行速度更快的原因可能在于,捕获成本非常高,以至于通过简单的尝试来取代检查所节省的时间超过了其成本。 尝试捕捉可

...

is.read()声明它抛出IOException 。 InvalidClassException扩展IOException 。 因此,就您的代码所知, is.read()可能会抛出InvalidClassException 。 所以你可以尝试抓住它。 is.read() declares that it throws IOException. InvalidClassException extends IOException. Therefore as far as your code know

...

你的问题在这里: reset();//this makes the textField1 hold an empty String

operand=Double.parseDouble(textField1.getText());

因此,当您尝试从中读取并解析Double时,您会发现NumberFormatException,因为您无法将空String转换为Double。 你的问题的一个解决方案是创建第二个JTextField并让用户将他想要添加的第一个数字写入第一个textField,将第二

...

catch必须声明它捕获的异常: catch (Exception E) {

System.out.println("C");

throw new Exception("2");

}

catch must declare what exception it catches: catch (Exception E) {

System.out.println("C");

throw new Exception("2");

}

尝试这个 public static void main(String[] args) {

double wage = Validate.collectWage("Please enter your hourly wage");

}// end main method

public static Double collectWage(String messageIn) {

Scanner input = new Scanner(System.in);

String st

...

这听起来像是一个静态的横切关注点。 使用Java时,您可以使用AOP,aspectJ轻松添加此类问题(日志记录)。 这是定义正确的切入点的问题。 请注意,AOP通常在应用程序的设计和开发过程中使用。 我不知道你是否能用一个切入点实现你的目标。 此外,AOP可以是非侵入性的。 这意味着您不必更改应用程序的源代码。 它甚至可以在没有源代码时使用,例如只在JAR中编译的类。 This sounds like a static crosscutting concern. You can add this

...

说明 从Java文档 : [ try块]包含一个或多个可能抛出异常的法定代码行。 (接下来的两个小节将解释catch和finally块。) 例外是一种特殊的对象 。 当你编写new Exception() ,你正在创建一个新的异常对象。 当你写throw new Exception()你正在创建一个新的错误,然后把它扔到最近的try-catch块中,放弃你的其他代码。 当你抛出一个异常时,它被try-catch块捕获,它嵌套在 (在)内部。 也就是说,假定注册了该异常的正确catch块。 如果代码

...

由于不会在try块内部抛出异常的方法,是否会对以下代码产生任何负面的性能影响? 不,它不会有任何性能影响,但是: 无论如何,我通常会在try块中放入最少的代码 我会尽量避免捕获Exception ,而是捕获特定的异常 只是打印堆栈跟踪很少是正确的“处理”方式和您捕获的异常。 通常你想中止整个操作,不管是什么组成的 Will there be any negative performance implications on the following code due to methods that

...

您可以将Thread.sleep包装在一个函数中,该函数将任何异常重新抛出为运行时异常(或任何未捕获的异常)。 public static void trySleep(long millis) {

try {

Thread.sleep(millis);

} catch (InterruptedException e) {

throw new RuntimeException("Interrupted during sleep", e);

}

...

java错放了构造_在catch代码附近的Java代码中“错放了构造”(“misplaced construct(s)” in Java code near a catch)...相关推荐

  1. java jar包资源文件_深入jar包:从jar包中读取资源文件

    我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看 ...

  2. npoi 所有列调整为一页_必能用到,一页PPT中想放超多图片怎么办?

    本期介绍一个很实用的PPT技巧, 在公司介绍.活动总结.成果展示的最后, 我们经常会在一页PPT中, 放上大量头像或者活动照片. 放头像能让内部人员产生认同感, 让观众感觉到人情味. 放照片能将很多边 ...

  3. 怎么让背景铺满整个页面_必能用到,一页PPT中想放超多图片怎么办?

    本期介绍一个很实用的PPT技巧, 在公司介绍.活动总结.成果展示的最后, 我们经常会在一页PPT中, 放上大量头像或者活动照片. 放头像能让内部人员产生认同感, 让观众感觉到人情味. 放照片能将很多边 ...

  4. java虚拟机能自动处理 异常_对于非运行时异常,程序中一般可不做处理,由java虚拟机自动...

    1.Java异常机制 Java把异常当做对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类.Java中的异常分为两大类:错误Error和异常Exception,Java ...

  5. java实现递归下降分析_使用递归实现检查未知层级目录中的文件-Java实用技能

    现在有这样一个需求,给你一个目录,需要你在此目录中查找全部名字中包含指定字符的文件. 这题的主要难点在于:目录中可能包含子目录,子目录中又会包含子目录.而我们事先没办法确定子目录到底有多少层!这时候就 ...

  6. pat根据中序遍历和先序遍历_算法题399:从前序与中序遍历序列构造二叉树

    (给算法爱好者加星标,修炼编程内功) 来源: 数据结构和算法-山大王wld 问题描述 今天我们就不做关于双指针的了,我们爬到树上玩会儿,做一道关于二叉树的题.今天的题就一句话,根据一棵树的前序遍历与中 ...

  7. 我的世界java版指令保留物品栏_我的世界或将在模式切换中保存物品栏

    我的世界或将在模式切换中保存物品栏.昨天我的世界开发人员Jeb又在推特上曝光了我的世界新的改动计划.小伙伴们可能都有这样的体验,就是生存切换创造模式的时候,有时拿错东西了,结果把生存模式物品栏中的物品 ...

  8. java交易撮合怎么实现_「康力电梯002367」“股票实时交易系统如何实现高并发撮合交易?最好有java架构“java 股票分析工具-京东方a小-seo金融...

    本文由京东方a小编创作于2020-09-10 21:11:04发布的来源于seo金融股票配资http://www.drill-pipe.com/gov/52833.html请您欣赏.seo金融网拥有众 ...

  9. 我的世界java版游戏角色名_我的世界:默认游戏角色中谁最帅?jeb成为了万众瞩目的那一个...

    原标题:我的世界:默认游戏角色中谁最帅?jeb成为了万众瞩目的那一个 文/小编 大家好,我是小编,一个美貌与智慧并存的男子.前世的千百次轮回,才换得今生的一次相遇.为了让小伙伴们更好地了解游戏中的内容 ...

最新文章

  1. 用g++编译C++ 的流程示例如下
  2. 在CentOS/RHEL 7.X安装 EPEL repo 的方法
  3. 皮一皮:程序猿表示这点不够退休...
  4. java: \uxxxx unicode编码
  5. C++是不是类型安全的?
  6. 错误:在keystone中无法找到默认角色user_第四章 keystone认证组件安装1
  7. ajax数据显示,使用js通用模板
  8. spring4.x(6)---SpringIOC的Scope配置
  9. 存储路径_KUKA C4机器人通过KRC CONFIGURATEOR设置存储路径
  10. 用python把相同名称的放在一起,python实现将具有相同名称的文件放入相应的文件夹中,把,对应,内...
  11. IOS的四种数据存储方式及优劣
  12. noip 2010 数字统计
  13. Oracle SQL优化原则
  14. DEA模型及matlab应用3:SBM-DEA 模型
  15. 省钱兄(APP、h5版本)任务悬赏点赞平台uniapp前端源码模板
  16. 控制策略 | PI控制器积分分离的仿真分析
  17. 3.音视频工作流程分析 — OSD
  18. 如何修改网卡的默认dns服务器,DNS怎么设置?DNS设置大全
  19. 沈航数值统计-16-17A+B
  20. HTML小游戏11 —— 横版恐龙大冒险游戏(附完整源码)

热门文章

  1. 基于JAVA融呗智慧金融微资讯移动平台服务端计算机毕业设计源码+数据库+lw文档+系统+部署
  2. [六秋01]宋元诗歌赏读
  3. python用opencv实现图片的美白磨皮_opencv----人脸美白算法,祛斑,祛痘,磨皮等...
  4. 【医学】基于小波变换DWT实现ECG信号心率计算附matlab代码
  5. ngff m2无线网卡接口改装nvme ssd固态硬盘及测速
  6. 家政服务管理系统/家政管理系统
  7. Proxyfire烈火代理软件与论坛
  8. DNS原理和解析过程
  9. iOS Xcode如何添加模拟器
  10. LinuxPTP使用,selected local clock xxx as best master