내 테이크 :
짧은 버전
높은 수준의 훨씬 향상된 파일 및 파일 시스템 기능을 갖춘 java.nio.file 패키지가 추가되었습니다.
네트워크 소켓 또는 낮은 수준의 파일 액세스 관점에서 NIO == NIO.2와 몇 가지 편의 개선 사항이 있습니다.
더 긴 버전
자바 IO
패키지 : java.io
이전 차단 I / O API
자바 NIO
새로운 비 차단 API 인 Java 1.4에 추가되었습니다.
패키지 : java.nio
Java non-blocking IO. 수업은 좋아 Selector
, SelectorKey
, Channel
.
NIO는 I / O가 (네트워크를위한 큰 걸음을했다 나에게 보인다 Selector
, SelectorKey
, SocketChannel
, ServerSocketChannel
, Buffer
), 훨씬 적은 파일에 대한 I / O를 ( FileChannel
및 Buffer
단지를 포함하여 메모리 매핑 된 파일). 이것은 네트워크 및 파일 부분 모두에 대해 상당히 낮은 수준의 API입니다.
자바 NIO.2
Java 7에 추가되었습니다. 주로 훨씬 향상된 파일 및 파일 시스템 조작과 주소 지정 API를 추가하는 것입니다. 새로운 파일 및 파일 시스템 관련 API는 상대적으로 높은 수준입니다.
패키지 : java.nio.file
부모에 대한 몇 가지 추가 사항 java.nio
.
이 추가 사항은 파일 I / O 용이며 네트워크 I / O 또는 하위 수준 파일 API에 대한 몇 가지 사소한 추가 사항입니다.
가장 주목할만한 하위 수준의 파일 관련 필요하지 않은 API 추가는 AsynchronousSocketChannel
, AsynchronousServerSocketChannel
및이며 AsynchronousFileChannel
, 일부 메서드에 콜백 변형을 추가합니다. 의 비동기 버전은 주로 편리하게 추가되었습니다. 이러한 매핑 인터페이스는 이전에도 함께 해킹되었을 수 있었지만 이제는 JRE에서 즉시 사용할 수 있습니다.
새로운 파일 API는 경로로 훨씬 더 유용한 파일 시스템 주소 지정, 사용자 정의 파일 시스템 공급자를 사용한 훨씬 향상된 ZIP 파일 조작, 특수 파일 속성 액세스, 하나의 명령으로 전체 파일 읽기, 하나의 명령 등. 그러나 모든 파일 / 파일 시스템과 관련이 있으며 모두 상당히 높은 수준입니다.
네트워크 소켓 또는 저수준 파일 액세스의 관점에서 위에서 이미 말한 것을 반복합니다. NIO == NIO.2
관련 링크