通过对Java Core的学习,对java exception有了新的认识,之前在处理异常的时候,会采用try...catch...finally这种形式:
public void connect2() { Socket client = null; PrintWriter out = null; Scanner scanner = null; try { client = new Socket("173.39.171.51", 12211); client.setSoTimeout(5000); out = new PrintWriter(client.getOutputStream()); scanner = new Scanner(client.getInputStream()); while (scanner.hasNextLine()) { System.out.println("Recive :" + scanner.nextLine()); out.println("Hello."); TimeUnit.SECONDS.sleep(5); } } catch (IOException | InterruptedException e) { //TODO your biz e.printStackTrace(); }finally{ if(null != out) out.close(); if(null != scanner) scanner.close(); if(null != client) try { client.close(); } catch (IOException e) { e.printStackTrace(); } } }
看了Java Core上面的讲解后,新的异常处理会采用下面的形式:
public void connect() { try { Socket client = null; PrintWriter out = null; Scanner scanner = null; try { client = new Socket(); client.connect(new InetSocketAddress("173.39.171.51", 12211),5000); out = new PrintWriter(client.getOutputStream(), true); scanner = new Scanner(client.getInputStream()); while (scanner.hasNextLine()) { System.out.println("Recive :" + scanner.nextLine()); out.println("Hello."); TimeUnit.SECONDS.sleep(5); } } finally { if(null != out) out.close(); if(null != scanner) scanner.close(); if(null != client) client.close(); } } catch (IOException | InterruptedException e) { //TODO your biz e.printStackTrace(); } }
第二中种形式的代码风格看着更加简洁,职能也更加专一:里面的try...finally 处理资源关闭;外面的try...catch处理异常。
相关推荐
java比较全的基础代码,含有数据类型,集合collection,异常exception,文件输出流io,llambda,cocket,线程等基础代码,包含了一个小的聊天案例,需要全的聊天案例,请到我的其他文件里下载。很适合java初学者以及...
java学习笔记,学习中的错误总结,编程经验
Java中Error和Exception的区别.pdf 学习资料 复习资料 教学资源
Java编程老鸟潜心写作,奉献高效率的Java学习心得 完全站在没有编程经验读者的角度,手把手教会读者学习Java 配16小时多媒体教学视频,高效、直观 一一击破Java入门可能会遇到的难点和疑惑 抽丝剥茧,层层推进,让...
示例描述:本章学习Java的输入和输出。 CopyFile.java 文件复制实例 dir.java 显示目录下的所有文件和目录 encrypt.java 文件加密 FileList.java 自己实现的一个文件名称枚举类 MyDataIO.java 数据输入输出示例...
免费共享,很详细的介绍了反射机制的原理,适合追根究底的java学习者
Java编程老鸟潜心写作,奉献高效率的Java学习心得 完全站在没有编程经验读者的角度,手把手教会读者学习Java 配16小时多媒体教学视频,高效、直观 一一击破Java入门可能会遇到的难点和疑惑 抽丝剥茧,层层推进,让...
帮助大家复习java基础知识其中有 hashCode 2 toString 2 finalize 2 用已学知识做出简单的房屋出租系统 3 类方法使用注意事项和细节讨论 4 main()方法 4 代码块 4 代码块使用注意事项和细节 5 单例模式 6 final...
与 Exception 有关的 Java 关键字 19 什么是 Error 20 内部类 20 集合 20 ArrayList 21 Vector 21 LinkedList 21 Stack 21 HashSet 22 TreeSet 22 LinkedHashSet 22 HashMap 23 集合实现类特征图 23 泛形 23 反射 24...
主要介绍了Java throw Exception实现异常转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
* @see java.lang.Exception * @since jdk 1.5 */ public class ExceptionManager extends RuntimeException { private static final long serialVersionUID = -6963187366089365790L; /** * This field ...
主要介绍了详解Java中Checked Exception与Runtime Exception 的区别的相关资料,这里提供实例帮助大家学习理解这部分内容,需要的朋友可以参考下
java面试笔试资料包括JAVA基础核心知识点深度学习Spring面试题等资料合集: JAVA核心知识点整理-282页 Java与哈希算法.docx Java中Lambda表达式的使用.docx JAVA多线程之线程间的通信方式.docx Java注解详解.docx ...
java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException commons-logging-1.1.1.jar不加这个包 java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory ...
主要介绍了javax.net.ssl.SSLException: java.lang.RuntimeException: Could not generate DH keypair 解决方法,有需要的朋友们可以学习下。
第一章 瞭解 Java 第二章 入門準備 第三章 語法入門 第四章 瞭解 Java 第五章 陣列 第六章 字串 ...第十章 例外處理(Exception Handling) 第十一章 列舉型態(Enumerated Types) 第十二章 泛型(Generics)
第一章 JAVA入门 10 计算机语言发展史 10 机器语言 10 汇编语言 10 高级语言 10 其他高级语言 11 JAVA发展简史 12 JAVA为什么能够流行? 13 JAVA各版本的含义 13 JAVA技术体系架构 14 JAVA的特性和优势 14 JAVA应用...
全书分4篇,共24章,其中,第1篇为技能学习篇,主要包括Java Web开发环境、JSP语法、JSP内置对象、Java Bean技术、Servlet技术、EL与JSTL标签库、数据库应用开发、初识Struts2基础、揭密Struts2高级技术、Hib锄劬e...
java学习的笔记,回顾一些基本的要领,知识点,很有帮助 比如: Day Eight 异常: 异常的分类 Java会将所有的异常封装成对象,其根本父类为Throwable。 Throwable有两个子类:Error 和Exception。 Error:一个...
Exception [java] 例外; 异常 [ik'sepʃәn] entry n.登录项, 输入项, 条目['entri] enum (关键字) execute vt.执行 ['eksikju:t] exhibit v.显示, 陈列 [ig'zibit] exist 存在, 发生 [ig'zist] '(SQL关键字 ...