API (Application Programming Interface)는 라이브러리라고 부르기도 합니다. 바로 프로그래밍 개발에 사용되는 클래스 및 인터페이스의 모음을 말합니다. JAVA API 도큐먼트는 이러한 클래스와 인터페이스를 쉽개 찾아 이용할 수 있도록 문서화한 것을 말합니다. 개발자라면 api document를 직접 찾아서 볼 수 있어야합니다. 사이트 주소는 아래와 같습니다.
https://docs.oracle.com/javase/8/docs/api/
Java Platform SE 8
docs.oracle.com
JAVA API 도큐먼트는 크게 3부분으로 나누어져 있습니다.
좌측 상단 프레임 : 패키지 전체 목록
좌측 하단 프레임 : 패키지에 속하는 클래스와 인터페이스
중앙 프레임 : 선택한 클래스나 인터페이스에 대한 설명
우리가 자주 사용하는 String 클래스에 대해서 한번 살펴보겠습니다. java.lang 패키지 안에 있으니 java.lang 패키지를 선택후 좌측 하단 프레임에서 String을 클릭합니다.
익숙한 메소드들이 보일 것입니다. 예를들어 charAt(int index)는 문자열에서 해당 인덱스에 있는 문자를 리턴해줍니다. 메소드명, 인자, 반화형을 확인할 수 있습니다. 구글링해서 빠르게 예제를 찾을 수 있지만 이런식으로 공식 사이트의 다큐먼트를 참고해서 필요한 메소드를 직접 찾을 수 있습니다.
java.lang패키지
이 패키지는 자바의 기본적인 클래스를 담고 있는 패키지입니다. 그래서 이 패키지 안의 클래스와 인터페이스는 import없이 사용할 수 있습니다. 지금까지 사용한 String과 System 클래스도 이 패키지에 포함되어있기 때문에 import하지 않고 사용할 수 있었습니다.
주요 클래스와 용도
java.util 패키지
이 패키지는 자바 프로그램 개발에 조미료 같은 역할을 하는 클래스입니다. 이 패키지는 컬렉션 클래스들이 대부분을 차지하기 때문에 컬렉션 클래스들에 대한 설명은 다음에 자세히 하고 이번엔 여섯가지 클래스만 소개하겠습니다.
자바에서 상속이란 필수적이다. 여러분이 상속하건 하지 않았건 기본적인 상속을 하게 된다.
class O {}
위의 코드는 아래와 코드가 같다.
class O extends Object {}
자바에서 모든 클래스는 사실 Object를 암시적으로 상속받고 있는 것이다. 그런 점에서 Object는 모든 클래스의 조상이라고 할 수 있다. 그 이유는 모든 클래스가 공통으로 포함하고 있어야 하는 기능을 제공하기 위해서다.
API 문서를 보자.
http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html
메소드의 목록을 살펴보자.
Object 클래스는 필드가 없고 메소드들로 구성되어 있다. 이 메소드들은 모든 클래스가 Object를 상속하기 때문에 모든 클래스에서 사용이 가능하다.