SlideShare a Scribd company logo
1 of 3
Download to read offline
北京圣思园科技有限公司


                                 Java SE Lesson 10



1. 静态代理模式图示




2.   Java 注解(Annotation)     :
a)   Override 注解表示子类要重写(override)父类的对应方法。
b)   Deprecated 注解表示方法是不建议被使用的。
c)   SuppressWarnings 注解表示抑制警告。
3.   自定义注解:当注解中的属性名为 value 时,在对其赋值时可以不指定属性的名称
     而直接写上属性值即可;除了 value 以外的其他值都需要使用 name=value 这种赋值
     方式,即明确指定给谁赋值。
4.   当 我 们 使 用 @interface 关 键 字 定 义 一 个 注 解 时 , 该 注 解 隐 含 地 继 承 了
     java.lang.annotation.Annotation 接口;如果我们定义了一个接口,并且让该接口继承
     自 Annotation,那么我们所定义的接口依然还是接口而不是注解;Annotation 本身
     是接口而不是注解。可以与 Enum 类比。
5.   JUnit(3.8、4.x)   :Keep the bar green to keep the code clean.
6.   我的名言:       没有反射,      很多框架就不存在了。           (No Reflection, most frameworks)
                                                                  No            。
7.   JUnit4 的执行的一般流程:
a)   首先获得待测试类所对应的 Class 对象。
b)   然后通过该 Class 对象获得当前类中所有 public 方法所对应的 Method 数组。
c)   遍历该 Method 数组,取得每一个 Method 对象
d)   调用每个 Method 对象的 isAnnotationPresent(Test.class)方法,           判断该方法是否被 Test
     注解所修饰。
e)   如果该方法返回 true,那么调用 method.invoke()方法去执行该方法,否则不执行。
8.   单元测试不是为了证明你是对的,而是证明你没有错误。
9.   Writing Secure Code(编写安全的代码)           :Input is evil。
北京圣思园科技有限公司


10. 异常(Exception)    。
11.Java 中的异常分为两大类:
a) Checked exception (非 Runtime Exception)
b) Unchecked exception(Runtime Exception)
12. Java 中所有的异常类都会直接或间接地继承自 Exception。
13.RuntimeException 类也是直接继承自 Exception 类,它叫做运行时异常,Java 中所有
   的运行时异常都会直接或间接地继承自 RuntimeException。
14. Java 中凡是继承自 Exception 而不是继承自 RuntimeException 的类都是非运行时异
   常。




15. 异常处理的一般结构是:
try
{
}
catch(Exception e)
{
}
finally
{
}
无论程序是否出现异常,finally 块中的代码都是会被执行的。
16. 对于非运行时异常(checked exception)    ,必须要对其进行处理,处理方式有两种:
    第一种是使用 try.. catch…finally 进行捕获;第二种是在调用该会产生异常的方法所在
    的方法声明 throws Exception
17. 对于运行时异常(runtime exception)    ,我们可以不对其进行处理,也可以对其进行
    处理。推荐不对其进行处理。
18. NullPointerException 是空指针异常,出现该异常的原因在于某个引用为 null,但你
北京圣思园科技有限公司


却调用了它的某个方法。这时就会出现该异常。

More Related Content

Similar to [圣思园][Java SE]Java se lesson 10

Java与单元测试.ppt
Java与单元测试.pptJava与单元测试.ppt
Java与单元测试.ppttest499702
 
Java面试题集
Java面试题集Java面试题集
Java面试题集yiditushe
 
[圣思园][Java SE]Java se lesson 5
[圣思园][Java SE]Java se lesson 5[圣思园][Java SE]Java se lesson 5
[圣思园][Java SE]Java se lesson 5ArBing Xie
 
Efficient JavaScript Unit Testing (Chinese Version), JavaOne China 2013
Efficient JavaScript Unit Testing (Chinese Version), JavaOne China 2013Efficient JavaScript Unit Testing (Chinese Version), JavaOne China 2013
Efficient JavaScript Unit Testing (Chinese Version), JavaOne China 2013Hazem Saleh
 
Java面试宝典
Java面试宝典Java面试宝典
Java面试宝典ma tao
 

Similar to [圣思园][Java SE]Java se lesson 10 (8)

Java与单元测试.ppt
Java与单元测试.pptJava与单元测试.ppt
Java与单元测试.ppt
 
Sun java
Sun javaSun java
Sun java
 
Java面试题集
Java面试题集Java面试题集
Java面试题集
 
[圣思园][Java SE]Java se lesson 5
[圣思园][Java SE]Java se lesson 5[圣思园][Java SE]Java se lesson 5
[圣思园][Java SE]Java se lesson 5
 
PHPUnit
PHPUnitPHPUnit
PHPUnit
 
Java annotation
Java annotationJava annotation
Java annotation
 
Efficient JavaScript Unit Testing (Chinese Version), JavaOne China 2013
Efficient JavaScript Unit Testing (Chinese Version), JavaOne China 2013Efficient JavaScript Unit Testing (Chinese Version), JavaOne China 2013
Efficient JavaScript Unit Testing (Chinese Version), JavaOne China 2013
 
Java面试宝典
Java面试宝典Java面试宝典
Java面试宝典
 

More from ArBing Xie

[圣思园][Java SE]Java se lesson 3
[圣思园][Java SE]Java se lesson 3[圣思园][Java SE]Java se lesson 3
[圣思园][Java SE]Java se lesson 3ArBing Xie
 
[圣思园][Java SE]Swing
[圣思园][Java SE]Swing[圣思园][Java SE]Swing
[圣思园][Java SE]SwingArBing Xie
 
[圣思园][Java SE]Java se lesson 15
[圣思园][Java SE]Java se lesson 15[圣思园][Java SE]Java se lesson 15
[圣思园][Java SE]Java se lesson 15ArBing Xie
 
[圣思园][Java SE]Websphere.application.developer(wsad)使用外置win cvs解决方案
[圣思园][Java SE]Websphere.application.developer(wsad)使用外置win cvs解决方案[圣思园][Java SE]Websphere.application.developer(wsad)使用外置win cvs解决方案
[圣思园][Java SE]Websphere.application.developer(wsad)使用外置win cvs解决方案ArBing Xie
 
[圣思园][Java SE]Strategy
[圣思园][Java SE]Strategy[圣思园][Java SE]Strategy
[圣思园][Java SE]StrategyArBing Xie
 
[圣思园][Java SE]Reflection
[圣思园][Java SE]Reflection[圣思园][Java SE]Reflection
[圣思园][Java SE]ReflectionArBing Xie
 
[圣思园][Java SE]Ooad与uml lesson 2
[圣思园][Java SE]Ooad与uml lesson 2[圣思园][Java SE]Ooad与uml lesson 2
[圣思园][Java SE]Ooad与uml lesson 2ArBing Xie
 
[圣思园][Java SE]Observer
[圣思园][Java SE]Observer[圣思园][Java SE]Observer
[圣思园][Java SE]ObserverArBing Xie
 
[圣思园][Java SE]Network
[圣思园][Java SE]Network[圣思园][Java SE]Network
[圣思园][Java SE]NetworkArBing Xie
 
[圣思园][Java SE]Jdk5
[圣思园][Java SE]Jdk5[圣思园][Java SE]Jdk5
[圣思园][Java SE]Jdk5ArBing Xie
 
[圣思园][Java SE]Java se lesson 22
[圣思园][Java SE]Java se lesson 22[圣思园][Java SE]Java se lesson 22
[圣思园][Java SE]Java se lesson 22ArBing Xie
 
[圣思园][Java SE]Java se lesson 21
[圣思园][Java SE]Java se lesson 21[圣思园][Java SE]Java se lesson 21
[圣思园][Java SE]Java se lesson 21ArBing Xie
 
[圣思园][Java SE]Java se lesson 20
[圣思园][Java SE]Java se lesson 20[圣思园][Java SE]Java se lesson 20
[圣思园][Java SE]Java se lesson 20ArBing Xie
 
[圣思园][Java SE]Java se lesson 17
[圣思园][Java SE]Java se lesson 17[圣思园][Java SE]Java se lesson 17
[圣思园][Java SE]Java se lesson 17ArBing Xie
 
[圣思园][Java SE]Java se lesson 16
[圣思园][Java SE]Java se lesson 16[圣思园][Java SE]Java se lesson 16
[圣思园][Java SE]Java se lesson 16ArBing Xie
 
[圣思园][Java SE]Java se lesson 13
[圣思园][Java SE]Java se lesson 13[圣思园][Java SE]Java se lesson 13
[圣思园][Java SE]Java se lesson 13ArBing Xie
 
[圣思园][Java SE]Java se lesson 12
[圣思园][Java SE]Java se lesson 12[圣思园][Java SE]Java se lesson 12
[圣思园][Java SE]Java se lesson 12ArBing Xie
 
[圣思园][Java SE]Java se lesson 11
[圣思园][Java SE]Java se lesson 11[圣思园][Java SE]Java se lesson 11
[圣思园][Java SE]Java se lesson 11ArBing Xie
 
[圣思园][Java SE]Java se lesson 9
[圣思园][Java SE]Java se lesson 9[圣思园][Java SE]Java se lesson 9
[圣思园][Java SE]Java se lesson 9ArBing Xie
 
[圣思园][Java SE]Java se lesson 8
[圣思园][Java SE]Java se lesson 8[圣思园][Java SE]Java se lesson 8
[圣思园][Java SE]Java se lesson 8ArBing Xie
 

More from ArBing Xie (20)

[圣思园][Java SE]Java se lesson 3
[圣思园][Java SE]Java se lesson 3[圣思园][Java SE]Java se lesson 3
[圣思园][Java SE]Java se lesson 3
 
[圣思园][Java SE]Swing
[圣思园][Java SE]Swing[圣思园][Java SE]Swing
[圣思园][Java SE]Swing
 
[圣思园][Java SE]Java se lesson 15
[圣思园][Java SE]Java se lesson 15[圣思园][Java SE]Java se lesson 15
[圣思园][Java SE]Java se lesson 15
 
[圣思园][Java SE]Websphere.application.developer(wsad)使用外置win cvs解决方案
[圣思园][Java SE]Websphere.application.developer(wsad)使用外置win cvs解决方案[圣思园][Java SE]Websphere.application.developer(wsad)使用外置win cvs解决方案
[圣思园][Java SE]Websphere.application.developer(wsad)使用外置win cvs解决方案
 
[圣思园][Java SE]Strategy
[圣思园][Java SE]Strategy[圣思园][Java SE]Strategy
[圣思园][Java SE]Strategy
 
[圣思园][Java SE]Reflection
[圣思园][Java SE]Reflection[圣思园][Java SE]Reflection
[圣思园][Java SE]Reflection
 
[圣思园][Java SE]Ooad与uml lesson 2
[圣思园][Java SE]Ooad与uml lesson 2[圣思园][Java SE]Ooad与uml lesson 2
[圣思园][Java SE]Ooad与uml lesson 2
 
[圣思园][Java SE]Observer
[圣思园][Java SE]Observer[圣思园][Java SE]Observer
[圣思园][Java SE]Observer
 
[圣思园][Java SE]Network
[圣思园][Java SE]Network[圣思园][Java SE]Network
[圣思园][Java SE]Network
 
[圣思园][Java SE]Jdk5
[圣思园][Java SE]Jdk5[圣思园][Java SE]Jdk5
[圣思园][Java SE]Jdk5
 
[圣思园][Java SE]Java se lesson 22
[圣思园][Java SE]Java se lesson 22[圣思园][Java SE]Java se lesson 22
[圣思园][Java SE]Java se lesson 22
 
[圣思园][Java SE]Java se lesson 21
[圣思园][Java SE]Java se lesson 21[圣思园][Java SE]Java se lesson 21
[圣思园][Java SE]Java se lesson 21
 
[圣思园][Java SE]Java se lesson 20
[圣思园][Java SE]Java se lesson 20[圣思园][Java SE]Java se lesson 20
[圣思园][Java SE]Java se lesson 20
 
[圣思园][Java SE]Java se lesson 17
[圣思园][Java SE]Java se lesson 17[圣思园][Java SE]Java se lesson 17
[圣思园][Java SE]Java se lesson 17
 
[圣思园][Java SE]Java se lesson 16
[圣思园][Java SE]Java se lesson 16[圣思园][Java SE]Java se lesson 16
[圣思园][Java SE]Java se lesson 16
 
[圣思园][Java SE]Java se lesson 13
[圣思园][Java SE]Java se lesson 13[圣思园][Java SE]Java se lesson 13
[圣思园][Java SE]Java se lesson 13
 
[圣思园][Java SE]Java se lesson 12
[圣思园][Java SE]Java se lesson 12[圣思园][Java SE]Java se lesson 12
[圣思园][Java SE]Java se lesson 12
 
[圣思园][Java SE]Java se lesson 11
[圣思园][Java SE]Java se lesson 11[圣思园][Java SE]Java se lesson 11
[圣思园][Java SE]Java se lesson 11
 
[圣思园][Java SE]Java se lesson 9
[圣思园][Java SE]Java se lesson 9[圣思园][Java SE]Java se lesson 9
[圣思园][Java SE]Java se lesson 9
 
[圣思园][Java SE]Java se lesson 8
[圣思园][Java SE]Java se lesson 8[圣思园][Java SE]Java se lesson 8
[圣思园][Java SE]Java se lesson 8
 

[圣思园][Java SE]Java se lesson 10

  • 1. 北京圣思园科技有限公司 Java SE Lesson 10 1. 静态代理模式图示 2. Java 注解(Annotation) : a) Override 注解表示子类要重写(override)父类的对应方法。 b) Deprecated 注解表示方法是不建议被使用的。 c) SuppressWarnings 注解表示抑制警告。 3. 自定义注解:当注解中的属性名为 value 时,在对其赋值时可以不指定属性的名称 而直接写上属性值即可;除了 value 以外的其他值都需要使用 name=value 这种赋值 方式,即明确指定给谁赋值。 4. 当 我 们 使 用 @interface 关 键 字 定 义 一 个 注 解 时 , 该 注 解 隐 含 地 继 承 了 java.lang.annotation.Annotation 接口;如果我们定义了一个接口,并且让该接口继承 自 Annotation,那么我们所定义的接口依然还是接口而不是注解;Annotation 本身 是接口而不是注解。可以与 Enum 类比。 5. JUnit(3.8、4.x) :Keep the bar green to keep the code clean. 6. 我的名言: 没有反射, 很多框架就不存在了。 (No Reflection, most frameworks) No 。 7. JUnit4 的执行的一般流程: a) 首先获得待测试类所对应的 Class 对象。 b) 然后通过该 Class 对象获得当前类中所有 public 方法所对应的 Method 数组。 c) 遍历该 Method 数组,取得每一个 Method 对象 d) 调用每个 Method 对象的 isAnnotationPresent(Test.class)方法, 判断该方法是否被 Test 注解所修饰。 e) 如果该方法返回 true,那么调用 method.invoke()方法去执行该方法,否则不执行。 8. 单元测试不是为了证明你是对的,而是证明你没有错误。 9. Writing Secure Code(编写安全的代码) :Input is evil。
  • 2. 北京圣思园科技有限公司 10. 异常(Exception) 。 11.Java 中的异常分为两大类: a) Checked exception (非 Runtime Exception) b) Unchecked exception(Runtime Exception) 12. Java 中所有的异常类都会直接或间接地继承自 Exception。 13.RuntimeException 类也是直接继承自 Exception 类,它叫做运行时异常,Java 中所有 的运行时异常都会直接或间接地继承自 RuntimeException。 14. Java 中凡是继承自 Exception 而不是继承自 RuntimeException 的类都是非运行时异 常。 15. 异常处理的一般结构是: try { } catch(Exception e) { } finally { } 无论程序是否出现异常,finally 块中的代码都是会被执行的。 16. 对于非运行时异常(checked exception) ,必须要对其进行处理,处理方式有两种: 第一种是使用 try.. catch…finally 进行捕获;第二种是在调用该会产生异常的方法所在 的方法声明 throws Exception 17. 对于运行时异常(runtime exception) ,我们可以不对其进行处理,也可以对其进行 处理。推荐不对其进行处理。 18. NullPointerException 是空指针异常,出现该异常的原因在于某个引用为 null,但你