作家
登录

关于Java习惯用法的总结

作者: 来源: 2017-09-05 12:03:04 阅读 我要评论

下面的三个例子应用了不合的方法完成了同样的工作。

实现Runnnable的方法:

  1. void startAThread0() { 
  2.   new Thread(new MyRunnable()).start(); 
  3.  
  4. class MyRunnable implements Runnable { 
  5.   public void run() { 
  6.     ... 
  7.   } 
  8.  

持续Thread的方法:

  1. void startAThread1() { 
  2.   new MyThread().start(); 
  3.  
  4. class MyThread extends Thread { 
  5.   public void run() { 
  6.     ... 
  7.   } 
  8.  

匿名持续Thread的方法:

  1. void startAThread2() { 
  2.   new Thread() { 
  3.     public void run() { 
  4.       ... 
  5.     } 
  6.   }.start(); 
  7.  
  • 不要直接调用run()办法。老是调用Thread.start()办法,这个办法会创建一条新的线程并使新建的线程调用run()。
  • 参考:java.lang.Thread, java.lang.Runnable。

应用try-finally

I/O流例子:

锁例子:

  1. void doWithLock(Lock lock) { 
  2.   lock.acquire(); 
  3.   try { 
  4.     ... 
  5.   } finally { 
  6.     lock.release(); 
  7.   } 
  8.  
  • 如不雅try之前的语句运行掉败并且抛出异常,那么finally语句块就不会履行。但无论如何,在这个例子里不消担心资本邓晔着。
  • 如不雅try语句块琅绫擎的语句抛出异常,那么法度榜样的运行就会跳到finally语句块里履行尽可能多的语句,然后彪炳这个办法(除非这个办法还有另一个外围的finally语句块)。

大年夜输入流里攫取字节数据

  1. InputStream in = (...); 
  2. try { 
  3.   while (true) { 
  4.     int b = in.read(); 
  5.     if (b == -1) 
  6.       break; 
  7.     (... process b ...) 
  8.   } 
  9. } finally { 
  10.   in.close(); 
  11.  
  • read()办法要么返回下一次大年夜流里攫取的字节数(0到255,包含0和255),要么在达到流的末尾时返回-1。
  • 参考:java.io.InputStream.read()。

(优先)应用标准库的办法:

  1. void writeStuff() throws IOException { 
  2.   OutputStream out = new FileOutputStream(...); 
  3.   try { 
  4.     out.write(...); 
  5.   } finally { 
  6.     

      推荐阅读

      非常实用的Linux命令行技巧

    我们天天应用很多Linux敕令行。我们大年夜网上知道一些技能,但如不雅我们不去演习,我们就有可能忘记。我决定做一个关于技能和桥绫桥的列表,这些技能和桥绫桥对于你来说可能是已经忘记的,或>>>详细阅读


    本文标题:关于Java习惯用法的总结

    地址:http://www.17bianji.com/lsqh/37140.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)