9장
1. Object 클래스
Module
java.base
Package
java.lang
Inheritance
java.lang.Object
Class Description
Type Signature
pubilc class Object
Block
- 클래스 계층 구조의 루트 - 모든 클래스의 슈퍼 클래스 (배열을 포함한 모든 객체가 이 클래스의 메서드를 구현)
Note
Since
1.0
1.1. 메서드
final void
wait (long timeoutMillis, int nanos)
현재의 스레드가 통지를 받거나 인터럽트를 받아 깨어날 때까지, 또는 일정시간이 경과할 때까지 기다림
1.2. Object 클래스의 Equals

2. String 클래스
Module
java.base
Package
java.lang
Class Description
Note
All Implemented Interfaces: Serializable, CharSequence, Comparable <String>, Constable, ConstantDesc
Type Signature
public final class String extends Object implements Serializable, Comparable< String>, CharSequence, Constable, ConstantDesc
Block
JavaDocs - 문자 문자열 클래스 - Java 프로그램의 모든 문자열 리터럴(ex. "abc")은 이 클래스의 인스턴스로 구현 - 문자열은 상수이므로 생성된 후에는 값을 변경 불가 - 문자열 버퍼는 변경 가능한 문자열을 지원 - 문자열 객체는 불변이므로 공유 가능 - 대/소문자 매핑은 문자 클래스에 지정된 유니코드 표준 버전을 기반 - Java 언어는 문자열 연결 연산자( + )와 다른 객체를 문자열로 변환하는 특수 지원을 제공 - 이 클래스의 생성자나 메서드에 널 인수를 전달하면 NullPointerException이 발생 자바의 정석 - 문자형 배열 참조변수(char[ ]) value를 인스턴스 변수로 정의 - 문자열 리터럴은 컴파일 시 클래스 파일에 한 번만 저장 (클래스 파일이 클래스 로더에 의해 메모리에 올라갈 때 리터럴들은 JVM에 있는 상수 저장소(constant pool)에 저장) - 빈 문자열 저장 가능
Note
Since
1.0
See Also
Class
2.1. 필드
static final Comparator< String>
compareToIgnoreCase 에 의해 캐릭터 라인 객체의 순서를 지정하는 비교자
2.2. 생성자
String()
빈 문자 시퀀스를 나타내도록 새로 생성된 String 객체를 초기화
String (byte[] bytes)
플랫폼의 기본 문자 집합을 사용하여 지정된 바이트 배열을 디코딩하여 새 String을 구축
String (byte[] ascii, int hibyte)
Deprecated 이 메서드는 바이트를 문자로 제대로 변환하지 않음
String (byte[] bytes, int offset, int length)
플랫폼의 기본 문자셋을 사용해 지정된 바이트의 서브 배열을 디코딩해 새로운 String을 구축
String (byte[] ascii, int hibyte, int offset, int count)
Deprecated 이 메서드는 바이트를 문자로 제대로 변환하지 않음
지정된 문자셋을 사용해 지정된 바이트의 서브 배열을 디코딩해 새로운 String을 구축
지정된 문자셋을 사용해 지정된 바이트의 서브 배열을 디코딩해 새로운 String를 구축
String(char[] value)
현재 문자 배열 인수에 포함된 문자 시퀀스를 나타내도록 새 String을 할당
String (char[] value, int offset, int count)
문자 배열 인자의 서브 배열의 문자를 포함하는 새로운 String를 할당
String (int[] codePoints, int offset, int count)
유니코드 코드 포인트 배열 인자의 서브 배열의 문자를 포함하는 새로운 String를 할당
String (StringBuffer buffer)
현재 문자열 버퍼 인자에 포함된 문자 시퀀스를 포함하는 새 문자열을 할당
String (StringBuilder builder)
현재 문자열 빌더 인자에 포함된 문자 시퀀스를 포함하는 새 문자열을 할당
2.3. 메서드
static String
지정된 로케일, 포맷 캐릭터 라인 및 인수를 사용해 포맷된 캐릭터 라인을 리턴
void
getBytes (int srcBegin, int srcEnd, byte[] dst, int dstBegin)
Deprecated 이 메서드는 문자를 바이트 단위로 제대로 변환하지 않음
static String
join (CharSequence delimiter, CharSequence... elements)
지정된 구분자의 사본과 함께 결합된 CharSequence 요소의 사본으로 구성된 새로운 String를 리턴
static String
join (CharSequence delimiter, Iterable<? extends CharSequence> elements)
지정된 구분자의 사본과 함께 결합된 CharSequence 요소의 사본으로 구성된 새로운 String를 리턴
int
lastIndexOf (String str, int fromIndex)
지정된 인덱스로부터 역방향으로 검색해, 지정된 서브 캐릭터 라인의 마지막 발생의 이 캐릭터 라인내의 인덱스를 리턴
int
offsetByCodePoints (int index, int codePointOffset)
이 캐릭터 라인내의 인덱스가 지정된 인덱스에서 코드 포인트 오프셋 코드 포인트에 의해 오프셋 되는 인덱스를 리턴
boolean
regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
2개의 캐릭터 라인 영역이 같은지 어떨지를 판정
replace (CharSequence target, CharSequence replacement)
리터럴 타겟 시퀀스와 일치하는 이 캐릭터 라인의 각 부분 캐릭터 라인을 지정된 리터럴 치환 시퀀스로 치환
replaceFirst (String regex, String replacement)
지정된 정규식과 일치하는 이 캐릭터 라인의 첫 번째 부분 캐릭터 라인을 지정된 치환으로 치환
boolean
startsWith (String prefix, int toffset)
지정된 인덱스에서 시작하는 이 캐릭터 라인의 서브 캐릭터 라인이 지정된 접두사로 시작하는지 어떨지를 판정
2.4. String 클래스의 Equals

3. StringBuffer 클래스
Module
java.base
Package
java.lang
Class Description
Note
All Implemented Interfaces: Serializable, Appendable, CharSequence, Comparable< StringBuffer>
Type Signature
public final class StringBuffer extends Object implements Serializable, Comparable< StringBuffer>, CharSequence
Block
- thread-safe, 변경 가능한 문자 시퀀스 클래스 - 문자열과 비슷하나 수정 가능 - 어느 시점에서든 특정 문자 시퀀스를 포함하지만 특정 메서드 호출을 통해 시퀀스의 길이와 내용을 변경 가능 - 소스 시퀀스와 관련된 연산이 발생할 때마다 소스가 아닌 해당 연산을 수행하는 문자열 버퍼에서 동기화 - 용량이 있으며 내부 버퍼가 넘치면 자동으로 더 크게 만들아짐 - 이 클래스의 생성자나 메서드에 널 인수를 전달하면 NullPointerException이 발생 - JDK 5 릴리즈부터 단일 스레드에서 사용하도록 설계된 StringBuilder로 보완되었음 (StringBuilder는 동일한 연산을 모두 지원하지만 동기화를 수행하지 않아서 더 빠름)
Note
Since
1.0
3.1. 생성자
문자를 포함하지 않고, 초기 용량이 16자인 문자열 버퍼를 구축합니다.
StringBuffer(int capacity)
문자를 포함하지 않는 캐릭터 라인 버퍼를, 지정된 초기 용량을 가지는 캐릭터 라인 버퍼를 구축합니다.
StringBuffer (CharSequence seq)
지정된 캐릭터 시퀀스와 동일한 문자를 포함하는 캐릭터 라인 버퍼를 구축합니다.
StringBuffer (String str)
지정된 캐릭터 라인의 내용으로 초기화된 캐릭터 라인 버퍼를 구축합니다.
3.2. 메서드
insert (int index, char[] str, int offset, int len)
이 시퀀스에 캐릭터 라인 배열 인자의 서브 배열의 캐릭터 라인 표현을 삽입
insert (int dstOffset, CharSequence s, int start, int end)
이 시퀀스에 지정된 캐릭터 시퀀스의 서브 시퀀스를 삽입
int
lastIndexOf (String str, int fromIndex)
지정된 인덱스로부터 역방향으로 검색해, 지정된 서브 캐릭터 라인의 마지막 발생의 이 캐릭터 라인내의 인덱스를 리턴
int
offsetByCodePoints (int index, int codePointOffset)
이 시퀀스내의 인덱스가 지정된 인덱스로부터 코드 포인트 오프셋 코드 포인트에 의해 오프셋 되는 인덱스를 리턴
4. Math 클래스
Module
java.base
Package
java.lang
Block
- 수학 계산 메서드를 지원하는 클래스 - 지수, 로그, 제곱근 등 기본 숫자 연산 수행 메서드 포함 - 모든 구현은 비트 단위로 동일한 결과를 반환하도록 정의되지 않았음 - 2의 보수 정수 연산을 사용(오버플로에 주의)
Note
Since
1.0
4.1. 필드
4.2. 메서드
static int
absExact(int a)
- int 값이 int로 정확히 표현 가능한 경우, 그 수학적 절대값을 리턴 - 결과가 양의 정수 범위를 넘으면 ArithmeticException를 throw
static long
absExact(long a)
- long 값이 long으로 정확히 표현 가능한 경우, 롱값의 수학적 절대값을 리턴 - 결과가 양의 long 범위를 넘으면 ArithmeticException를 throw
static double
fma (double a, double b, double c)
- 3개의 인수의 융합 곱셈을 리턴 - 즉, 처음 2개의 인수를 제3의 인수와 합산한 후 가장 가까운 배수로 한번 반올림한 정확한 곱을 리턴
static float
fma (float a, float b, float c)
- 3개의 인수의 융합 곱셈을 리턴 (즉, 처음 2개의 인수를 제3의 인수와 합산한 후, 가장 가까운 플로트로 한 번 반올림한 정확한 곱을 리턴)
static double
scalb (double d, int scaleFactor)
올바르게 반올림된 하나의 부동소수점 곱셈에 의해 수행된 것과 같이 반올림된 d × 2scaleFactor를 리턴
static float
scalb (float f, int scaleFactor)
올바르게 반올림된 하나의 부동소수점 곱셈에 의해 수행된 것과 같이 반올림된 f × 2scaleFactor를 리턴
5. Warpper 클래스
기본 자료형을 참조 자료형으로 사용할 수 있도록 정의한 클래스
오토박싱(autoboxing):기본 자료형을 Wrapper 클래스 객체로 자동 변환
언박싱(unboxing): Wrapper클래스 객체를 기본 자료형으로 변환
5.1. Boolean 클래스
Module
java.base
Package
java.lang
Type Signature
public final class Boolean extends Object implements Serializable, Comparable< Boolean>, Constable
Block
- primitive type boolean값을 객체 안에 wrapping하는 클래스 - boolean 타입의 단일 필드 포함
Note
Since
1.0
5.2. Character 클래스
Module
java.base
Package
java.lang
Type Signature
public final class Character extends Object implements Serializable, Comparable< Character>, Constable
Block
- primitive type char의 값을 객체에 wrapping하는 클래스 - char 타입의 단일 필드가 포함
Note
Since
1.0
5.3. Number 클래스
Module
java.base
Package
java.lang
Class Description
Note
All Implemented Interfaces: Serializable Direct Known Subclasses: AtomicInteger, AtomicLong, BigDecimal, BigInteger, Byte, Double, DoubleAccumulator, DoubleAdder, Float, Integer, Long, LongAccumulator, LongAdder, Short
Block
primitive type인 byte, short, int, long, float, double을 변환 가능한 platform 클래스의 슈퍼 클래스
Note
Since
1.0
5.3.1. Byte 클래스
Module
java.base
Package
java.lang
Block
- primitive type byte의 값을 객체에 wrapping하는 클래스 - byte 타입의 단일 필드가 포함
Note
Since
1.1
5.3.2. Short 클래스
Module
java.base
Package
java.lang
Block
- primitive type short의 값을 객체에 wrapping하는 클래스 - short 타입의 단일 필드가 포함
Note
Since
1.1
5.3.3. Integer 클래스
Module
java.base
Package
java.lang
Class Description
Note
All Implemented Interfaces: Serializable, Comparable< Integer>, Constable, ConstantDesc
Type Signature
public final class Integer extends Number implements Comparable< Integer>, Constable, ConstantDesc
Block
- primitive type int의 값을 객체에 wrapping하는 클래스 - int 타입의 단일 필드가 포함
Note
Since
1.0
5.3.4. Long 클래스
Module
java.base
Package
java.lang
Class Description
Note
All Implemented Interfaces: Serializable, Comparable< Long>, Constable, ConstantDesc
Type Signature
public final class Long extends Number implements Comparable< Long>, Constable, ConstantDesc
Block
- primitive type long의 값을 객체에 wrapping하는 클래스 - long 타입의 단일 필드가 포함
Note
Since
1.0
5.3.5. Float 클래스
Module
java.base
Package
java.lang
Class Description
Note
All Implemented Interfaces: Serializable, Comparable< Float>, Constable, ConstantDesc
Type Signature
public final class Float extends Number implements Comparable< Float>, Constable, ConstantDesc
Block
- primitive type float의 값을 객체에 wrapping하는 클래스 - float 타입의 단일 필드가 포함
Note
Since
1.0
5.3.6. Double 클래스
Module
java.base
Package
java.lang
Class Description
Note
All Implemented Interfaces: Serializable, Comparable< Double>, Constable, ConstantDesc
Type Signature
public final class Double extends Number implements Comparable< Double>, Constable, ConstantDesc
Block
- primitive type int의 값을 객체에 wrapping하는 클래스 - int 타입의 단일 필드가 포함
Note
Since
1.1
참고 자료
자바의 정석 - 도우출판
Last updated