通过对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中的异常处理详解 #### 一、异常基础概述 ...通过以上内容的学习,我们可以更好地理解Java中的异常处理机制,并能够在实际编程中合理运用各种异常处理技术,提升程序的健壮性和用户体验。
自定义异常是在Java中通过继承`java.lang.Throwable`或其子类(如`Exception`或`Error`)来实现的。通常,我们选择继承`Exception`类,因为它用于表示程序可以恢复的错误,而`Error`则用于表示系统级的严重问题,...
这份“Java异常学习资料”包含了丰富的资源,帮助你深入理解Java异常机制,提升代码质量。 1. **异常概述** Java异常是一种在程序执行期间发生的错误或不正常情况,它可以是编译时错误,也可以是运行时错误。Java...
Java官方学习文档是Java开发者和初学者的重要资源,它提供了全面、权威的Java语言和平台规范的解释。这个文档详细介绍了Java编程语言的各种特性和使用方法,帮助新手逐步掌握这门强大的编程工具。以下是根据标题、...
通过对这些文档《java web 开发问题总结》的深入学习,我们可以更好地理解和解决实际开发中遇到的Java异常问题,提升代码质量,确保应用程序的稳定运行。无论是对于初学者还是经验丰富的开发者,掌握好Java异常处理...
根据提供的文件信息,我们可以整理出一系列与Java编程语言及其英语术语相关的知识点。下面将对这些词汇进行详细解读,...掌握这些基础概念对于学习和使用Java非常重要,有助于更深入地理解Java的内部机制和编程实践。
Java 反射学习 Java 反射是 Java 程序设计语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说 "自审 ",并能直接操作程序的内部属性。Java 反射的能力在实际应用中非常有价值,例如,使用它能获得 ...
8. **异常处理和日志记录**:理解如何使用Exception类进行异常处理,以及如何使用Log4j或Java内置的日志框架进行程序调试和日志记录。 9. **Java SE和Java EE**:Java Standard Edition(Java SE)是基础,而Java ...
在Java编程语言中,`java.util.InputMismatchException`是一个常见的运行时异常,它通常发生在尝试从数据...对于初学者来说,理解不同数据类型的性质以及如何正确地从各种数据源读取它们,是Java学习过程中的重要环节。
Exception类是Java中异常处理的核心,它位于`java.lang`包中,是所有检查型异常(checked exceptions)和非检查型异常(unchecked exceptions)的基类。本文将深入探讨Java中的Exception细节。 首先,异常分为两种...
在“Java学习资料(高级应用)”中,我们预计将深入探讨Java的高级特性和技术,这将帮助开发者提升他们的编程技能,更好地理解和应用Java在实际项目中的潜力。 1. **并发编程**:Java提供了强大的并发工具,如线程...
这篇“java学习笔记”可能包含了从基础到进阶的各种Java编程概念和技术。以下是对这些笔记可能涵盖的一些关键知识点的详细说明: 1. **Java基础知识**: - **语法**:包括变量声明、数据类型(如整型、浮点型、...
- **Exception类**:所有异常的基类,Java中的异常处理机制基于try-catch-finally结构。 - **Checked异常**:如IOException,需要在编译时被处理。 - **Unchecked异常**:如NullPointerException,运行时才会抛出...
以下是对"JAVA 异常处理的学习"主题的详细阐述: 一、异常的概念与分类 异常是在程序执行过程中发生的不正常情况,它可以是语法错误、运行时错误或者是程序员逻辑上的问题。Java中的异常被封装在类中,这些类继承自...
"java深入学习笔记.pdf" java是一种广泛应用的编程语言,具有平台独立性、对象oriented、分布式处理等特点。在java深入学习笔记.pdf中,我们可以学习到以下知识点: 一、java基础知识 * 变量声明:在java中,变量...
根据提供的文件信息,我们可以归纳出一系列与“Java基础学习视频-尚硅谷”相关的知识点。以下是对这些知识点的详细解析: ### Java基础知识概览 #### 1. Java简介 - **定义**:Java是一种广泛使用的面向对象编程...
"java学习资料.zip"包含了两本经典书籍的中文版本:《Effective Java》的第一版和第二版,这些都是Java开发者深入理解语言特性和最佳实践的重要资源。 《Effective Java》是由Joshua Bloch编写的,他是一位经验丰富...
Java 学习要点总结 Java 学习总结 Unit 1 相关概念: 1. JDK (Java Develop Kit):Java 开发工具包。 2. JRE (Java Runtime Environment):Java 运行环境。 3. J2EE (Java Enterprise Edition):Java 企业版,...
16. **异常处理**:Java通过try-catch-finally语句处理异常,Error通常表示系统级错误,而Exception是可捕获和处理的异常。多层捕获允许对不同类型的异常进行分层次处理。 这些只是Java学习的基础,实际开发中还...