자바 라이브러리 패키지

(2020-01-09)

자바 클래스 라이브러리, Object 클래스


1. 자바 언어라이브러리 패키지

  ㅇ 자바에서, 패키지(package)란?
     - 클래스들을 모아놓은 `폴더/디렉토리` 개념
        . 서로 관계가 깊은 클래스인터페이스들을 모아놓은 프로그램 묶음 단위 
     - 목적 : 여러 클래스들을 계층적으로 관리하기 위함
     - 물리적 대응 : 패키지 => 디렉토리/폴더, 클래스 => 파일(*.class) 
     - 사용방법
        . 같은 패키지 내 동일 디렉토리에 있는 클래스끼리는,
           .. 특별한 문법 구문이 없더라도 다른 클래스를 사용 가능
        . 다른 패키지/디렉토리에 있는 것을 사용하려면, 
           .. import 문장 문법에 의함

  ㅇ 자바는, 풍부한 클래스 라이브러리 패키지들을 갖고 있음
     - 자바 해석기용       : java.lang, java.io, java.util 등
        . java.lang 패키지 : 자바 기본 클래스들이 이에 속해 있음
           .. 기본 클래스 : Object 클래스, String 클래스, Integer 클래스, System 클래스 등
        . java.util 패키지 
           .. 날짜와 관련된 클래스인 Date, Calendar 클래스
           .. 자료구조와 관련된 컬렉션 프레임워크와 관련된 인터페이스클래스 등
           .. 기본 클래스 : Scanner 데이터 추출용 클래스 등
     - 브라우저 환경지원용 : java.applet, java.awt 등
     - 통신지원용          : java.net 등
     * [참고] ☞ 자바 API 문서


2. `java.lang 패키지` 내 자바 클래스 라이브러리Object 클래스
     - 자바 클래스 라이브러리의 루트/최상위 클래스 임
        . 자바의 모든 클래스Object의 후손
        . 즉, 모든 클래스가, Object 클래스로부터 파생됨/상속받음
        . Object 멤버를 공유하고, Object 메서드를 호출할 수 있음
        . 대부분의 Java 프로그램 내에서 Object.을 붙이지 않고, 단순명으로도 나타낼 수 있음
     - 메서드 만 (9개)를 가지며, 필드는 전혀 가지지 않음
        . toString, equals, hashCode, clone, finalize, getClass, notify, notifyAll, wait
        . 이들 메소드는 직접 수행 보다는, 재정의할만한 메소드 목록을 제공하는 역할을 함
           .. 즉, Object 클래스에 속한 메소드를 사용하려면, 
           .. 자신의 용도에 맞게 이들 메소드를 재정의하여 사용해야 함

  ㅇ String 클래스
     - java.lang 패키지에 속함 (java.lang.String)
        . 모든 Java 프로그램 내에서 단순명으로 나타낼 수 있음
     - 문자열을 값으로 지니고, 문자열을 조작하는 메소드를 갖추고 있음

  ㅇ System 클래스
     - java.lang 패키지에 속함
        . System 클래스는, 자바 가상머신을 나타내는 독립된 표준 장치
        . 모든 Java 프로그램 내 단순 명칭으로도 나타낼 수 있음
     - 자바 가상머신이 실행되는 기반 운영체제와 관련됨
     - 포함 기능 : 콘솔 표준 입출력(멤버 변수: in,out,err), 프로세스 관리 등

  ㅇ Wrapper(래퍼) 클래스
     - 8개의 기본 자료형객체로 다룰 수 있도록 만들어진 클래스
     - Byte 클래스 (byte), Short 클래스 (short), Integer 클래스 (integer),
       Long 클래스 (long), Character 클래스 (character), Double 클래스 (double),
       Float 클래스 (float), Boolean 클래스 (boolean)


3. `java.util 패키지` 내 자바 클래스 라이브러리

  ㅇ Arrays 클래스
     - java.util 패키지에 속함
     - 배열의 복사,정렬,검색 등의 처리


4. 날짜 시간 자바 클래스 라이브러리 (`java.util 패키지` 및 `java.time 패키지`)

  ㅇ 기존 : Date 클래스, Calendar 클래스
     - java.util 패키지에 속함
  ㅇ 자바8 추가 : LocalDate 클래스, LocalTime 클래스, LocalDateTime 클래스
     - java.time 패키지에 속함

자바 라이브러리/패키지
   1. 자바 라이브러리 패키지   2. 컬렉션  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"