快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

和记娱乐安卓下载和_机器人论坛



理解Java编译器在编译期是若何反省catch子句的。

择要

与其它一和记娱乐安卓下载和些说话比拟,Java的简单和同等性使编译器能检测许多差错。Java的开拓者熟识到若何寄托编译器对不精确的类型、不存在的措施的调用(这篇文章的主和记娱乐安卓下载和题)和不精确的非常处置惩罚进行捕获。然则在你真正必要知道你正在做什么的地方,那些你不想看到的情形仍会忽然呈现。假如你能确切的和记娱乐安卓下载和理解Java是如何让你抛掷和捕获非常的,那么你就会知道你什么时刻必要分外小心,什么样的习气能让你阔别烦恼。

Java的编译期检查对维持非常安然的框架进行了完美的支持,假如一个措施声明会抛掷一个非常,你无法在你的措施中不用捕获这个非常或声明你的措施也会抛掷这个非常的环境下调用那个措施。(更广泛的评论争论请看“Designing with Exception”)编译器无意偶尔也会阻拦你去捕获一个在try块中没有抛掷的非常,但并不老是如斯,大年夜多半时刻都不会。这篇Java Tip又一次评论争论了编译期反省。

throw子句的编译期反省

首先,让我们差别一下 Java 若何反省catch子句捕获的非常 与Java若何反省一个措施中声明的会被抛掷出的非常。(在这篇文章中,当我用小写字母e开首来说exception时,那就指java.lang.Throwable和它的子类。当我想要指明一个明确的类时,像java.lang.Exception,我会包孕包句或至少以大年夜写字母开首的类名。)刚开始,这种措施看起来彷佛很类似:两者都经由过程代码块的关联指清楚明了预期被抛出的非常。然则,当Java要求一个措施声明它抛出的非常时,它并不是有所依托的要求那个措施抛出每一个声明的非常,Java容许你设计出在你添加了功能时法度榜样维持和记娱乐安卓下载和稳定的API。

看一下下面这个自造的连接池的原始版本:

public class ConnectionPool {

public ConnectionPool() throws ConnectionException {

}

public Connection getConnectio和记娱乐安卓下载和n() throws ConnectionException {

// Allocate a connection (possibly throwing a ConnectionException or a

// subclass) if necessary, then return it

}

}

您可能还会对下面的文章感兴趣: