[부스트코스] Java 인스턴스 생성하기
인스턴스는 객체를 다양한 상태에서 사용하고, 기능을 재사용할 경우가 많은 상황에서 유용한 방식이다.
PrintWriter를 사용하기 위해 패키지를 가져오는 작업을 한다.
import java.io.PrintWriter;
최상단에 위와 같은 코드를 쓴다.
예외처리를 위한 Add throws declaration
IOException 선택
PrintWriter p1 = new PrintWriter("result1.txt");
p1.write("Hello 1");
p1.close();
PrintWriter p2 = new PrintWriter("result2.txt");
p2.write("Hello 2");
p2.close();
PrintWriter를 쓸 때, new를 통해서 p1이라는 인스턴스를 만든다. 그 인스턴스는 각자의 상태를 가지고 있다.
가령 p1은 result1.txt라는 상태를 내장하고 있다.
따라서 p1.write는 result1.txt에 대한 것이고, p2.write는 result2.txt에 대한 것이다.
new 뒤에 나오는 것들이 Constructor 이며, Constructor 앞에 new를 붙이면 그게 복제 되어 인스턴스(p1)이 되고, 그 인스턴스에 어떤 값이 들어올지 규제하기 위해 앞에 PrintWriter 라는 class를 붙인다.
Math와 같은 작업이 일회용이면, Instance는 다회용이라고 볼 수 있다.
https://docs.oracle.com/javase/7/docs/api/
Java Platform SE 7
docs.oracle.com
해당 사이트에서 Math와 PrintWriter의 차이를 확인할 수 있다. 메뉴얼에서 나타나는 Constructor 유/무이다.
Constructor가 없는 것은 일회용이라고 생각해 둘 수 있다.
Class를 인스턴스로서 활용하기를 원한다면 Constructor를 가지고있다는 점도 알 수 있다.