반응형
package practice; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintStream; import java.util.Scanner; public class Practice0220 { public static void main(String[] args) throws IOException, FileNotFoundException{ //1. 파일 입력 버퍼를 사용하기 위해 객체 fis를 생성한다. FileInputStream fis = new FileInputStream("C:\\acorn\\20200217\\workspace\\dd.txt"); //2. fis객체를 이용해서 단어/문장/줄로 읽어주는 Scanner api의 객체 scan을 생성한다. Scanner scan = new Scanner(fis); //3. scan의 기능인 nextInt() 함수를 이용해서 첫 번째 정수 값을 읽어서 x 변수에 대입하고 int x = scan.nextInt(); //4. nextInt() 함수를 다시 호출해서 두 번째 정수값을 읽어서 y변수에 대입한다. int y = scan.nextInt(); ////5. x와 y값을 더한 결과를 화면에 출력한다. //System.out.println(x + y); int result = x + y; System.out.println(result); //사용후 사용한 객체를 꼭 반환해준다. scan.close(); fis.close(); //1. 파일 출력을 위한 FileOutputStream 객체 fos를 생성한다. FileOutputStream fos = new FileOutputStream("C:\\acorn\\20200217\\workspace\\dd.out"); //2. 문자열 출력을 쉽게하기 위해서 PrintStream객체 out을 생성한다. PrintStream out = new PrintStream(fos); //3. out객체의 println()함수를 이용해서 result 값을 출력한다. out.println("123123213"); // System.out.println("작업완료"); //사용후 사용한 객체를 꼭 반환해준다. out.close(); fos.close(); } }
사용한 객체를 반환해주는 이유.
자바는 자바 플랫폼에서만 데이터를 사용하는 게 아니라 OS에서도 데이터를 사용할 수 도 있다.
사용자가 필요한 기능의 API에게 요청을 하면 OS는 그 데이터에 파일 버퍼를 생성시킨 후 자바 플랫폼에 전달해 사용을 하게 만들어 주고 만약 사용자가 객체를 사용한 뒤 Close();로 닫아주지 않는다면 그 운영체제는 파일 버퍼와 데이터를 받을 준비를 지속적으로 하고 있기 때문에 메모리 누수가 발생될 수 있다.
반응형
'웹 프로그래밍 기초 > 자바기반의 웹&앱 응용SW 개발자' 카테고리의 다른 글
자바기반의 웹&앱 응용 SW개발자 양성과정 3일차 -9 (0) | 2020.02.21 |
---|---|
자바기반의 웹&앱 응용 SW개발자 양성과정 3일차 -8 (0) | 2020.02.21 |
자바기반의 웹&앱 응용 SW개발자 양성과정 2일차 -6 (0) | 2020.02.20 |
자바기반의 웹&앱 응용 SW개발자 양성과정 2일차 -5 (0) | 2020.02.19 |
자바기반의 웹&앱 응용 SW개발자 양성과정 1일차 -4 (0) | 2020.02.19 |
댓글