Java의 스트림은 추상적인 개념입니다. 프로그램이 특정 데이터 소스에서 데이터를 읽어야 하는 경우 데이터 소스는 파일, 메모리 또는 네트워크 등이 될 수 있습니다.
반대로 특정 데이터 소스 대상에 데이터를 써야 하는 경우 데이터 스트림도 열리게 됩니다. 이 데이터 소스 대상은 파일, 메모리 또는 네트워크 등일 수도 있습니다.
스트림은 시작점과 끝점이 있는 일련의 바이트 집합입니다. 이는 데이터 전송에 대한 일반적인 용어 또는 추상화입니다. 즉, 두 장치 간의 데이터 전송을 스트림이라고 합니다. (추천 학습: java 강좌)
스트림의 본질은 데이터 전송입니다. 스트림은 데이터 전송 특성에 따라 다양한 클래스로 추상화되어 보다 직관적인 데이터 작업이 가능합니다.
Java의 스트림은 다양한 관점에서 분류될 수 있습니다:
흐름 방향에 따라: 입력 스트림과 출력 스트림으로 구분됩니다.
처리되는 데이터의 다양한 단위에 따라: 바이트 스트림(8비트)과 문자 스트림(16비트)으로 구분됩니다.
다양한 기능에 따라: 노드 흐름과 처리 흐름으로 구분됩니다.
노드 스트림: 특정 데이터 소스(노드)에서 데이터를 읽고 쓸 수 있는 스트림(예: 파일, 메모리)입니다. 마치 하나의 파이프가 수도꼭지에 연결되어 물을 배출하기 시작하는 것과 같습니다.
처리 스트림: 기존 스트림(노드 스트림 또는 처리 스트림)에 "연결"되어 데이터를 처리하여 프로그램에 더욱 강력한 읽기 및 쓰기 기능을 제공합니다. 이는 파이프(노드 흐름)를 연결하고, 유출되는 물을 추가로 처리하기 위해 특수 기능을 갖춘 여러 개의 두꺼운 파이프(처리 흐름)를 추가하는 것과 같습니다.
InputStream, OutputStream, Reader 및 Writer의 네 가지 기본 스트림에는 각각 파일 스트림, 버퍼 스트림, 데이터 스트림, 변환 스트림, 인쇄 스트림, 객체 스트림 등으로 구분되는 보다 구체적인 하위 클래스가 있으며, 모두 특정 하위 클래스를 갖습니다. 함수 또는 특정 데이터를 조작하는 데 사용됩니다
위 내용은 자바에서 스트림이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!