Board logo

标题: 讲述Java技术开发的规则之中级篇 [打印本页]

作者: qingqing3721    时间: 2011-8-28 04:44     标题: 讲述Java技术开发的规则之中级篇

本文引见的Java规则的说明分为3个主要级别,中级是平时开发用的比较多的级别,在今后将陆续写出其他的规则。遵守了这些规则可以提高程序的效率、使代码又更好的可读性等。(1)在finally方法里关掉input或者output资源,方法体外面定义了input或者output流的话,需要在finally外面把它关掉。以下这几种调用不需要遵守这条规则,因为colse()方法不起作用:
  java.io.StringWriter
  java.io.ByteArrayOutputStream
  java.io.ByteArrayInputStream
  如果再方法前往的时分没有调用close()方法来释放input()和output()的资源的话,会导致一个系统资源泄漏。而且在任何情况下都要确定在前往全调用了close()方法,包括出现异常的时分。所以需要在finally方法外面参与这个方法。这样就保证了在任何情况下都会关闭资源。
  错误示例:
  public class CIO
  {
  public void method (java.io.File f)
  {
  java.io.FileInputStream fis = null;
  try
  {
  fis = new java.io.FileInputStream (f);
  fis.read ();
  fis.close ();
  } catch (java.io.FileNotFoundException e1)
  {
  System.out.println("File not found");
  } catch (java.io.IOException e2)
  {
  System.皙肤泉净痘无痕精华凝露out.println("I/O Exception");
  }
  // 如果出现异常,这里就不能保证关闭资源。
  }
  }




欢迎光临 编程开发论坛 (http://bbs.lihuasoft.net/) Powered by Discuz! 6.0.0