易截截图软件、单文件、免安装、纯绿色、仅160KB

Java异常设计方法

    前些时候,把《Thinking in Java》中异常这一章翻出来再次研读,本人有些收获,并且有些观点和作者观点不太一致,共享之
1.异常的定义
    一个系统中定义异常应遵循如下几个原则:
a. 系统中如果某个模块功能比较单一,建议将所有异常放在一个package内;如果某个模块有很多子模块,建议将异常放各个对应子模块内;
b. 异常名称必须是自定义的;
c. 自定义异常都继承之Exception(不要继承RuntimeException);
d. 所有异常含有含有两个构造器:一个缺省构造器,一个用于构建异常链的构造器。
示例如下:
public class MyException1 extends Exception{
 public MyException1() {
  
 }
 
 public MyException1(Throwable cause) {
  super(cause);
 }
}
2.异常的处理
   在异常处理程序中遵循如下原则:
a. 本方法能处理的异常,异常处理程序中就处理掉,不向外层传递;
b. 本方法不能处理的异常,必须使用异常链,封装为本模块的异常向上传递。
示例如下:
public class test {
 public static void f() throws MyException1{
  throw new MyException1();
 }
 
 public static void main(String[] args) throws MyException2{
  try {
   f();
  } catch(MyException1 e) {
   throw new MyException2(e);
  }
 }
}
【注】:Bruce   Eckel指出建议使用runtimeException封装异常。本人认为,在系统设计中不应该这么做,因为在开发实际系统是,各个模块开发人员不一样,如果开发人员用runtimeException封装了异常,其他使用该模块的开发人员很难知道模块中抛出了异常。


相关文档:

解析Java类和对象的初始化过程

类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来分析的文章更是鲜有所见。
本文主要对类和对象初始化全过程进行分析,通过一个实际问题引入,将源代码转换成 JVM 字节码后, ......

将Java代码打包为exe文件

原文来自:http://gocom.primeton.com/modules/newbb/item44444_44444.htm
1       基本信息
摘要:
          现在有很多的工具将Java代码打包为exe文件,执行时不需要再编写批处理文件,或者在命令行输入长长的classpath信息,为用户使用 ......

获得当前计算机全部IP的一个java小程序

import java.net.InetAddress;
//本程序实现了获取本地IP地址
public class IP {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
InetAddress localHost;
InetAddress []ip;
try{
localHost=InetAddress.getLocalHost();
ip=InetAddr ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号