当前位置:文档之家› 《高级java培训》PPT课件

《高级java培训》PPT课件

高级java程序设计
1 、异常处理 2 、反射 3 、泛型
4 、 多线程 5 、 注释与反射
6 、 网络编程
1.异常处理
• 本章主要了解java异常的类型、发生和控制。熟悉在java程序中如何 灵活运行异常处理,使程序更加人性化。
• 课程内容:
1.1 异常介绍 1.2 异常类型 1.3 异常管理 1.4 异常控制 1.5 异常处理案例
它。 •示例:
throw new IllegalArgumentException("wrong Argument");
1.4 异常控制
•捕获异常 当有一个异常被抛出,如何捕获?可以使用try-catch捕获并处理
。 •示例:
try{ 这里为抛出异常的语句; } catch(Exception1 e1){ 这里处理异常; } catch(Exception2 e2){ 这里处理异常; } catch(Exception3 e3){ 这里处理异常; }
注意:当一个语句抛出异常,会强制立刻执行捕获异常的语句。并往下 执行,不会执行抛出异常的语句下面的语句。
1.4 异常控制
•声明异常 在java中,当前执行的语句必定属于某一个方法。java调用main()
方法开始一个程序。每个方法都必须声明它可能抛出的比检异常类型。 •给方法声明异常
public void myMethod() throws IOException
1.2 异常类型
•异常结构图 •RuntimeException 、Error以及它们的子 类都称为免检异常, 其他异常都为比检异 常,意思编译器会强 制要求程序员检查并 处理它们。
1.3 异常管理
• 遇到异常应该怎么办?什么时候我们自己会抛出异常? • 异常是针对方法来说的,抛出、声明抛出、捕获和处理异常都是在方
声明多个异常 public void myMethod() throws Exception1,Exception2,Exception3,.....,ExceptionN
1.4 异常控制
•获取异常的信息 异常的信息全部都保存在异常的那个实例中,所有可以通过调用
异常实例的方法来获取信息。 获取信息的方法: printStackTrace()、getMessage()、toString()和getStackTrace()
其方法。 • 其使用的class为java自带包ng.reflect中; • Class cls = Class.forName("className");
2.2反射(属性)
• 反射获取属性使用到的class为Filed • Filed.getName();获取属性对象名 • Filed.getType();获取属性类型
1.5 异常处理案例
• 如下面这串代码:
2.反射
• 本章主要介绍java反射对类操作,了解java反射对类型的属性的获取和 方法获取及其调用。
• 课程内容:
2.1 反射介绍 2.2 反射(属性) 2.3 反射(方法)
2.1反射介绍
• java反射是用来获取一个类信息的技术。 • 反射可以获取类的属性、构造方法、方法,并包括获取其值或者调用
法中进行的。 • Java异常处理通过5个关键字try、catch、throw、throws、finally进行管
理 • try{ 程序代码 • }catch(异常类型 异常的变量名){ 程序代码 • }finally{ 程序代码 •}
1.4 异常控制
•抛出异常 检测一个错误的程序可以创建一个正确的异常类型的实例并抛出
• Constructor ctorlist[] = cls.getDeclaredConstructors(); 获取构造方法,其他类似 反射(方法)的使用
3.泛型
• 了解泛型的优点,并掌握java原生部分泛型的使用及建立自己的泛型 类。
• 课程内容:
3.1 泛型优点 3.2 泛型类的使用 3.3 建立泛型类
2.3反射(方法)
• 反射获取方法使用到的class为Method • Modifier.toString(Method.getModifiers());获取方法修饰符 • Method.invoke(实例,参数(Objett[]))获取属性类型
Method.getRetuLeabharlann nType() //获取方法的返回值.
1.1 异常介绍
• 程序为什么需要异常处理? • 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误
有时候是可以避免的。比如说,你的代码少了一个分号,那么运行出 来结果是提示是错误ng.Error;如果你用System.out.println(11/0), 那么你是因为你用0做了除数,会抛出ng.ArithmeticException的 异常。 • 有些异常需要做处理,有些则不需要捕获处理。 • 异常有两个来源。一个是Java运行时环境自动抛出系统生成的异常, 比如在代码中执行3/0,这样就会抛出异常。二是程序员自己抛出的 异常。
多强制类型转换。这使得代码更加可读,并且减少了出错机会。 • 3、泛型的好处是在编译的时候检查类型安全,并且所有的强制转换
都是自动和隐式的,提高代码的重用率。
3.2 泛型的使用
• java预置的泛型使用
• Map以键值对储存类型的对象 • Map<String,Object> map =new Map<String,Object>();
3.1 泛型优点
• 在以前的java中是没有泛型的,那为什么会引入泛型呢? • 泛型的好处: • 1、类型安全。 • Map m = new HashMap(); • m.put("key", "blarg"); • String s = (String) m.get("key"); • 2、消除强制类型转换。 泛型的一个附带好处是,消除源代码中的许
• List以数组储存类型的对象 • List<String> list =new ArrayList<String>(); • List<Entity> list =new ArrayList<Entity>();
相关主题