Notice
Recent Posts
Recent Comments
Link
«   2026/05   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Archives
Today
Total
관리 메뉴

ki-sd 님의 블로그

[2026-03-30] java.lang 패키지 분석과 데이터 영속성(Persistence)의 경험 본문

JavaStudy

[2026-03-30] java.lang 패키지 분석과 데이터 영속성(Persistence)의 경험

ki-sd 2026. 4. 17. 21:28

자바의 근간을 이루는 기본 패키지의 구조를 파악하고, 메모리의 휘발성을 극복하는 파일 입출력(I/O)의 세계에 입문했다.

 

1. java.lang 패키지와 Object 클래스

  • java.lang은 자바 프로그래밍에 가장 필수적인 클래스들을 모아둔 패키지로, import 문을 작성하지 않아도 컴파일러가 자동으로 로드해 준다.
  • 최상위 클래스 Object: 자바의 모든 클래스는 암묵적으로 Object 클래스를 상속받는다는 사실을 확인했다. 객체의 상태를 문자열로 반환하는 toString(), 객체의 동등성을 비교하는 equals(), 고유 주소값을 해싱하는 hashCode() 등 시스템의 핵심 메서드들이 Object에 정의되어 있으며, 이를 상황에 맞게 오버라이딩하여 사용하는 규격을 학습했다.

2. 파일 입출력(I/O)을 통한 영구 저장

  • 프로그램의 변수나 객체는 RAM에 적재되므로 프로그램이 종료되면 모든 데이터가 증발한다. 이를 해결하기 위해 데이터를 하드 디스크에 기록하는 파일 I/O 스트림의 기초를 다루었다.
  • 사원 관리 시스템 실습: 키보드로 입력받은 사원의 정보(사번, 이름, 부서)를 단순히 배열이나 컬렉션에 담아두는 것에 그치지 않고, FileWriter나 BufferedWriter 등을 이용해 .txt 파일 형태로 저장했다. 반대로 프로그램을 재시작할 때 해당 파일을 읽어와 시스템에 로드하는 '데이터 영구 저장 및 복원'의 실제 서비스 흐름을 체감했다.