NIO라는 또 다른 I/O 패키지에 대해 들었습니다. 그것에 대해 말해주실 수 있나요?
원래 New I/O라고 불리는 NIO 패키지는 JDK 1.4에 의해 Java에 추가되었습니다. 채널 기반 I/O 작업 접근 방식을 지원합니다. NIO 클래스는 java.nio 패키지와 java.nio.channels 및 java.nio.charset과 같은 하위 패키지에 있습니다.
NIO는 버퍼와 채널이라는 두 가지 기본 항목을 기반으로 합니다. 버퍼는 데이터를 저장하고, 채널은 파일이나 소켓과 같은 I/O 장치에 대한 열린 연결을 나타냅니다. 일반적으로 새로운 I/O 시스템을 사용하기 위해서는 I/O 장치가 있는 채널과 데이터를 저장할 버퍼를 얻어야 한다. 그런 다음 버퍼를 사용하여 필요할 때 데이터를 삽입하거나 표시합니다.
NIO가 사용하는 다른 두 엔터티는 문자 집합과
입니다.
선택자. 문자 세트는 바이트가 문자에 매핑되는 방식을 정의합니다. 인코더를 사용하여 일련의 문자를 바이트 형식으로 인코딩할 수 있습니다. 그리고 디코더를 사용하여 일련의 바이트를 문자 형식으로 디코딩할 수 있습니다. 선택기는 키 기반, 비차단 및 다중화 I/O를 지원합니다. 즉, 선택기를 사용하면 여러 채널에 걸쳐 I/O를 수행할 수 있습니다. 소켓 기반 채널에 가장 적합합니다.
JDK 7부터 NIO는 NIO라는 용어와 같이 크게 개선되었습니다. 2가 자주 사용됩니다. 개선 사항에는 세 가지 새로운 패키지(java.nio.file, java.nio.file.attribute 및 java.nio.file.spi)가 포함되었습니다. 몇 가지 새로운 클래스, 인터페이스 및 메소드; 스트림 기반 I/O를 직접 지원합니다. 추가 기능으로 인해 특히 파일과 함께 NIO를 사용할 수 있는 방법이 확장되었습니다.
NIO는 이 장에서 논의되는 java.io에 있는 I/O 클래스를 대체하지 않는다는 점을 이해하는 것이 중요합니다. 대신 NIO 클래스는 표준 I/O 시스템을 보완하도록 설계되어 일부 상황에서 도움이 될 수 있는 대체 접근 방식을 제공합니다.
위 내용은 전문가에게 물어보세요 - I/O의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!