`
cjm0000000
  • 浏览: 32783 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Java Exception学习

    博客分类:
  • JAVA
阅读更多

通过对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 Exception

    ### Java中的异常处理详解 #### 一、异常基础概述 ...通过以上内容的学习,我们可以更好地理解Java中的异常处理机制,并能够在实际编程中合理运用各种异常处理技术,提升程序的健壮性和用户体验。

    JAVA 自定义异常 Exception

    自定义异常是在Java中通过继承`java.lang.Throwable`或其子类(如`Exception`或`Error`)来实现的。通常,我们选择继承`Exception`类,因为它用于表示程序可以恢复的错误,而`Error`则用于表示系统级的严重问题,...

    Java异常学习资料

    这份“Java异常学习资料”包含了丰富的资源,帮助你深入理解Java异常机制,提升代码质量。 1. **异常概述** Java异常是一种在程序执行期间发生的错误或不正常情况,它可以是编译时错误,也可以是运行时错误。Java...

    java官方学习文档

    Java官方学习文档是Java开发者和初学者的重要资源,它提供了全面、权威的Java语言和平台规范的解释。这个文档详细介绍了Java编程语言的各种特性和使用方法,帮助新手逐步掌握这门强大的编程工具。以下是根据标题、...

    java 异常 问题收集 Exception

    通过对这些文档《java web 开发问题总结》的深入学习,我们可以更好地理解和解决实际开发中遇到的Java异常问题,提升代码质量,确保应用程序的稳定运行。无论是对于初学者还是经验丰富的开发者,掌握好Java异常处理...

    java 英语学习词汇

    根据提供的文件信息,我们可以整理出一系列与Java编程语言及其英语术语相关的知识点。下面将对这些词汇进行详细解读,...掌握这些基础概念对于学习和使用Java非常重要,有助于更深入地理解Java的内部机制和编程实践。

    Java反射学习.pdf

    Java 反射学习 Java 反射是 Java 程序设计语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说 "自审 ",并能直接操作程序的内部属性。Java 反射的能力在实际应用中非常有价值,例如,使用它能获得 ...

    Java程序员入门 教你如何学习Java

    8. **异常处理和日志记录**:理解如何使用Exception类进行异常处理,以及如何使用Log4j或Java内置的日志框架进行程序调试和日志记录。 9. **Java SE和Java EE**:Java Standard Edition(Java SE)是基础,而Java ...

    Exception in thread “main“ java.util.InputMismatchException.pdf

    在Java编程语言中,`java.util.InputMismatchException`是一个常见的运行时异常,它通常发生在尝试从数据...对于初学者来说,理解不同数据类型的性质以及如何正确地从各种数据源读取它们,是Java学习过程中的重要环节。

    java中Exception的细节

    Exception类是Java中异常处理的核心,它位于`java.lang`包中,是所有检查型异常(checked exceptions)和非检查型异常(unchecked exceptions)的基类。本文将深入探讨Java中的Exception细节。 首先,异常分为两种...

    Java学习资料(高级应用)

    在“Java学习资料(高级应用)”中,我们预计将深入探讨Java的高级特性和技术,这将帮助开发者提升他们的编程技能,更好地理解和应用Java在实际项目中的潜力。 1. **并发编程**:Java提供了强大的并发工具,如线程...

    java学习笔记,好好学习

    这篇“java学习笔记”可能包含了从基础到进阶的各种Java编程概念和技术。以下是对这些笔记可能涵盖的一些关键知识点的详细说明: 1. **Java基础知识**: - **语法**:包括变量声明、数据类型(如整型、浮点型、...

    Java学习常用API

    - **Exception类**:所有异常的基类,Java中的异常处理机制基于try-catch-finally结构。 - **Checked异常**:如IOException,需要在编译时被处理。 - **Unchecked异常**:如NullPointerException,运行时才会抛出...

    JAVA 异常处理的学习

    以下是对"JAVA 异常处理的学习"主题的详细阐述: 一、异常的概念与分类 异常是在程序执行过程中发生的不正常情况,它可以是语法错误、运行时错误或者是程序员逻辑上的问题。Java中的异常被封装在类中,这些类继承自...

    java深入学习笔记.pdf

    "java深入学习笔记.pdf" java是一种广泛应用的编程语言,具有平台独立性、对象oriented、分布式处理等特点。在java深入学习笔记.pdf中,我们可以学习到以下知识点: 一、java基础知识 * 变量声明:在java中,变量...

    Java基础学习视频-尚硅谷

    根据提供的文件信息,我们可以归纳出一系列与“Java基础学习视频-尚硅谷”相关的知识点。以下是对这些知识点的详细解析: ### Java基础知识概览 #### 1. Java简介 - **定义**:Java是一种广泛使用的面向对象编程...

    java学习资料.zip

    "java学习资料.zip"包含了两本经典书籍的中文版本:《Effective Java》的第一版和第二版,这些都是Java开发者深入理解语言特性和最佳实践的重要资源。 《Effective Java》是由Joshua Bloch编写的,他是一位经验丰富...

    java 学习要点总结

    Java 学习要点总结 Java 学习总结 Unit 1 相关概念: 1. JDK (Java Develop Kit):Java 开发工具包。 2. JRE (Java Runtime Environment):Java 运行环境。 3. J2EE (Java Enterprise Edition):Java 企业版,...

    Java学习总结 Java课的一次大作业 Java的学习资料

    16. **异常处理**:Java通过try-catch-finally语句处理异常,Error通常表示系统级错误,而Exception是可捕获和处理的异常。多层捕获允许对不同类型的异常进行分层次处理。 这些只是Java学习的基础,实际开发中还...

Global site tag (gtag.js) - Google Analytics