明日から使える Java SE 7

2,942 views
2,864 views

Published on

Published in: Technology, News & Politics
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,942
On SlideShare
0
From Embeds
0
Number of Embeds
169
Actions
Shares
0
Downloads
17
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

明日から使える Java SE 7

  1. 1. 明日から使える Java SE 7Java in the Box 櫻庭 祐一
  2. 2. 祝7/28JavaSE7リリース
  3. 3. ほんとは2008 年リリース 予定だったけど
  4. 4. なぜ遅れた Project Lambda 機能 Project Jigsaw 買収 移行 JDK OpenJDK JavaFX?
  5. 5. Java SE 7 Themes Compatibility Productivity Project Coin Performance G1GC JSR166y Universality InvokeDynamic Integration NIO2
  6. 6. Try-with-resourcesMulti Catch/Precise Rethrow+1NIO2Upgrade ClassLoader
  7. 7. try-with-resources +1 try (InputStream in = new FileInputStream(src); OutputStream out = new FileOutputStream(dest)) { byte[] buf = new byte[1024]; int n; while((n = in.read(buf)) >= 0) { out.write(buf, 0, n); } } catch (IOException ex) { // 例外処理 }
  8. 8. Multi Catch/Precise Rethrow +1 try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse(stream); // パース } catch (final IOException | IllegalArgumentException | ParserConfigurationException | SAXException ex) { log(ex); throw ex; }
  9. 9. NIO2 FileVisitor を使ったファイルの検索 +1Path start = ...;String regex = ...;Files.walkFileTree(start, new SimpleFileVisitor<Path>() { public FileVisitResult visitFile(Path path, BasicFileAttributes attrs) throws IOException { if (Pattern.matches(regex, path.getFileName().toString()) { System.out.println("File: " + path); } return FileVisitResult.CONTINUE; }});
  10. 10. +0.5 Diamond Operator <> 数値リテラル
  11. 11. javafx.scene.control.Button button = new Button("OK"); +0.5EventHandler<ActionEvent> handler = new EventHandler<>() { public void handle(ActionEvent t) { // イベント処理 }};button.setOnAction(handler);button.setOnAction(new EventHandler<>() { public void handle(ActionEvent t) { // イベント処理 }});
  12. 12. 道半ばJSR166y Fork/Join FrameworkJSR292 InvokeDynamic JSR335 Project Lambda 実戦投入一歩手前Garbage First Garbage Collection (G1GC)
  13. 13. 微妙 ... String Switch JDBC 4.1 MXBean 拡張 Nimbus L&Fプラットフォーム依存 SCTP/SDP Unicode 6.0
  14. 14. なぜなくなった !! XML リテラル JSR255 JMX 2.0 JSR296 Beans Binding JSR303 Bean ValidationJSR274 BeanShell Script Language JSR260 Javadoc
  15. 15. なぜなくなった !! XML リテラル JSR255 JMX 2.0 JSR296 Beans Binding JSR303 Bean ValidationJSR274 BeanShell Script Languageコードネーム もなくなった JSR260 Javadoc
  16. 16. Conclusion 全体的に小粒のアップデート Java SE 8 につながる技術に注目 ファイルを扱うなら NIO2!! いきなり Java SE 8 はつらいよ 参考 ITpro Java SE 7 徹底理解
  17. 17. 明日から使える Java SE 7Java in the Box 櫻庭 祐一

×