- 기본 API
라이브러리(library). 프로그램 개발에 자주 사용되는 클래스 및 인터페이스의 모음 의미
- API 도큐먼트 : 쉽게 API를 찾아 이용할 수 있도록 문서화한 것
1. java.lang : 자바 프로그램의 기본적인 클래스를 담고 있는 패키지. import 없이 사용 가능
Object : 자바 클래스의 최상위 클래스로 사용 -> extends 안 하면 자동으로 extends Object 됨
System : 표준 입출력 장치(키보드/모니터)로부터 데이터 입력받을 때/ 출력시킬 대 사용.
Class : 클래스를 메모리로 로딩할 때 사용
String : 문자열 저장하고 여러가지 정보 얻을 때
StringBuffer, StringBuilder : 문자열 저장하고 내부 문자열 조작할 때
Math : 수학 함수 이용할 때
Wrapper(Byte,Short,Integer,Character,Float, Double, Long, Boolean) : 기본 타입의 데이터 갖는 객체 만들 때 사용, 문자열을 기본 타입으로 변환할 대 , 입력값 검사에 사용
2. java.util : 자바 프로그램 개발에 조미료 같은 역할. 컬렉션 클래스들이 대부분
Arrays : 배열 조작(비교, 복사, 정렬, 찾기)할 때 사용
Calendar : 운영체제의 날짜와 시간 얻을 때 사용
Date : 날짜와 시간 정보 저장하는 클래스
Objects : 객체 비교,null 여부 등 조사할 때 사용
StringTokenizer : 특정 문자로 구분되는 문자열 찾을
Random : 난수 얻을 때 사용
- Object
1. equals() : 매개 타입은 Object. 모든 객체가 매개 값으로 대입될 수 있음. Object가 최상위 타입으로 모든 객체가 Object 타입으로 자동 변환 가능하기 때문에
비교 연산자인 == 와 같음.. 같으면 true, 아니면 false ex) 기준 객체. equals(비교 객체);
2. hashCode() : 객체 해시코드. 객체를 식별할 하나의 정수 값
객체의 메모리 번지를 이용해서 해시코드를 만들어 리턴하기 때문에 객체마다 다른 값 가짐
hashCode() 리턴 값 -같음 -> equals() 리턴 값 -> 동등 객체, 아닐 시 다른 객체
3. toString() : 객체 문자 정보. 객체의 문자 정보. 기본적으로 Object클래스의 toString -> [클래스명@16진수 해시 코드]
오버 라이딩하여 재정의해서 필요에 따라 쓸 수 있음
4. clone() : 객체 복제. 원본 객체의 필드 값과 동일한 값을 가지는 새로운 객체를 생성하는 것 -> 원본 객체를 안전하게 보호하기 이해서
- 얕은 복제(thin clone) : 단순히 필드값을 복사해서 객체에 복사하는 것 -> 필드 값만 복제하기 때문에 필드가 기본 타입이면 값 복사, 필드가 참조 타입이면 객체 번지 복사
implements cloneable -> 복제 할 수 있다는 표시 try-catch문으로 예외처리(CloneNotSupportedException) 해줘야 함
- 깊은 복제(deep clone) : 얕은 복제는 참조 타입은 번지도 복제되기 때문에 원본 객체의 필드와 복제된 객체 필드는 같은 객체 참조 -> 복제가 변경하면 원본도 변경됨
참조하고 있는 객체도 복제하는 것 -> clone() 메소드 재정의해서 참조 객체를 복제하는 코드를 직접 작성해야 함
5. finalize() : 객체 소멸자. 참조하지 않는 배열이나 객체를 쓰레기 수집기가 힙 영역에서 자동으로 소멸시킴
쓰레기 수집기는 객체를 소멸하기 직전에 마지막으로 객체의 소멸자를 실행시킴
-buffer : 데이터를 임시로 저장하는 메모리 StringBuffer(멀티 스레드 지원/동기화 ), StringBuilder (단일 스레드)
- 정규 표현식 : 문자열이 정해져 있는 형식으로 구성되어 있는지 검증해야 함 ex) 이메일, 전화번호 등
- Pattern 클래스 : 정규 표현식으로 문자열을 검증하는 방법. ex) boolean result = Pattern.matches("정규식","검증할 문자열");
- Wrapper(포장) 클래스 : 기본 타입의 값을 내부에 두고 포장하기 때문, 기본 타입 값은 외부에서 변경될 수 없음
- Format : 일정한 포맷을 정해서 사용 가능 문자열 비교 : MessageFormat.format();
-<이것이 자바다1>. 한빛미디어