为什么在Java中的catch块中需要括号?
发布时间:2020-12-14 05:22:37 所属栏目:Java 来源:网络整理
导读:在 java中,如果我们必须在if之后执行一个语句,或者对于括号没有必要就执行一个语句.我们可以写: if(condition) executeSingleStatement(); 要么 for(init;condition;incr) executeSingleStatement(); 但是在catch块的情况下为什么我们不能省略括号?为什么
在
java中,如果我们必须在if之后执行一个语句,或者对于括号没有必要就执行一个语句.我们可以写:
if(condition) executeSingleStatement(); 要么 for(init;condition;incr) executeSingleStatement(); 但是在catch块的情况下为什么我们不能省略括号?为什么这是不可能的? catch(Exception e) e.printStackTrace(); 因为在大多数情况下,我们在catch块中只有一个语句,它在测试或记录语句时是e.printStackTrace(). 解决方法
这不是可能或不可能的问题.这只是一种语言(语法)设计决策.
Java语言解析器有几个实现.可以在不到一天的时间内修改解析器源,并允许没有括号的catch语句. http://www.google.com/search?q=java+parser 另请注意Java language grammar. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |