728x90
반응형
API 도큐먼트
- 자바 표준 모듈에서 제공하는 라이브러리를 쉽게 찾아서 사용할 수 있도록 도와주는 문서.
java.base
- 모든 모듈이 의존하는 기본 모듈로, 모듈 중 유일하게 requires하지 않아도 사용할 수 있음.
java.lang
- 자바 언어의 기본적인 클래스를 담고 있는 패키지
- 이 패키지에 있는 클래스와 인터페이스는 import 없이 사용할 수 있음.
Object 클래스
- 클래스를 선언할 때 extends 키워드로 다른 클래스를 상속하지 않으면 암시적으로 java.lang.Object 클래스를 상속.
- 자바의 모든 클래스는 Object의 자식이거나 자손 클래스.
객체 동등 비교
- Objects의 equals() 메서드는 객체의 번지를 비교하고 boolean 값을 리턴.
객체 해시코드
- 객체를 식별하는 정수. Object의 hashCode()메서드는 객체의 메모리 번지를 이용해서 해시코드를 행성하기 때문에 객체마다 다른 정수값을 리턴.
- hashCode()가 리턴하는 정수값이 같은지 확인하고, equals()메서드가 true를 리턴하는지 확인해서 동등 객체임을 판단.
객체 문자 정보
- 객체를 문자열로 표현한 값. Object의 toString()메서드는 객체의 문자 정보를 리턴함.
- 기본적으로 Object의 toString()메서는 '클래스명@16진수해시코드'로 구성된 문자열을 리턴함.
레코드 선언
- 데이터 전달을 위한 DTO 작성 시 반복적으로 사용되는 코드를 줄이기 위해 도입.
System 클래스
- System 클래스의 정적 static 필드와 메서드를 이용하면 프로그램 종료, 키보드 입력, 콘솔(모니터) 출력, 현재시간 읽기, 시스템 프로퍼티 읽기 등이 가능.
String 클래스
- String 클래스 문자열을 저장하고 조작할 때 사용.
- 문자열을 리터럴은 자동으로 String 객체로 생성. String 클래스의 다양한 생성자를 이용해서 직접 객체를 생성할 수도 있음.
- 한글 1자를 UTF-8로 인코딩하면 3바이트가 되고, EUC-KR로 인코딩하면 2바이트가 됨.
StringBuilder 클래스
- 잦은 문자열 변경 작업을 해야 한다면 String보다는 StringBuilder가 좋음.
- StringBuilder는 내부 버퍼에 문자열을 저장해두고 그 안에서 추가, 수정, 삭제 작업을 하도록 설계.
StringTokenizer 클래스
- 문자열에 열 종류가 아닌 한 종류의 구분자만 있다면 StringTokenizer를 사용할 수 있도록 있음.
- StringTokenizer 객체를 생성 시 첫 번째 매개값으로 전체 문자열을 주고, 두 번째 매개값으로 구분자를 줌.
- 구분자를 생략하면 공백이 기본 구분자가 됨.
포장 객체
- 기본 타입(byte, char, short, int, long, float, double, boolean)의 값을 갖는 객체.
- 포장하고 있는 기본 타입의 값을 변경할 수 없고, 단지 객체로 생성하는 목적.
박싱과 언박싱
- 박싱 : 기본 타입 값을 포장 객체로 만드는 과정. 포장 클래스 변수에 기본 타입 값이 대입 시 발생.
- 언박싱 : 포장 객체에서 기본 타입 값을 얻어내는 과정. 기본 타입 변수에 포장 객체가 대입 시 발생.
문자열을 기본 타입 값으로 변환
- 포장 클래스는 문자열을 기본 타입 값으로 변환할 때도 사용.
- 대부분의 포장 클래스에는 'parse+기본타입'명으로 되어 있는 정적 메서드 있음.
포장 값 비교
- 포장 객체는 번지를 비교하므로 내부 값을 비교하기 위해 ==와 !=연산자를 사용할 수 없음.
- 다음 범위의 값을 갖는 포장 객체는 ==와 !=연산자로 비교할 수 있지만. 내부 값을 비교하는 것이 아니라 객체 번지를 비교하는 것.
- 대신 포장 클래스의 equals()메서드로 내부 값을 비교할 수 있음.
Math 클래스
- 수학 계산에 사용할 수 있는 정적 메서드 제공.
Date 클래스
- 날짜를 표현하는 클래스로 객체 간에 날짜 정보로 주고 받을 때 사용.
- Date() 생성자는 컴퓨터의 현재 날짜를 읽어 Date 객체로 만듦.
Calendar 클래스
- 달력을 표현하는 추상 클래스
- getInstance() 메서드로 컴퓨터에 설정된 시간대 기준으로 Calendar 하위 객체로 얻을 수 있음.
날짜와 시간 조작
- java.time 패키지의 LocalDateTime 클래스가 제공하는 메서드를 이용해 날짜와 시간을 조작 가능.
날짜와 시간 비교
- LocalDataTime 클래스는 날짜와 시간을 비교할 수 있는 메서드 제공.
DecimalFormat
- 숫자를 형식화된 문자열로 변환.
SimpleDateFormat
- 날짜를 형식화된 문자열로 변환.
정규 표현식
- 문자 또는 숫자와 관련된 표현과 반복 기호가 결합된 문자열.
Pattern 클래스로 검증
- java.util.regex 패키지의 Pattern 클래스는 정규 표현식으로 문자열을 검증하는 matches() 메서드 제공.
리플렉션
- Class 객체로 관리하는 클래스와 인터페이스의 메타 정보를 프로그램에서 읽고 수정하는 것.
- 메타 정보 : 패키지 정보, 타입 정보, 멤버(생성자, 필드, 메서드)정보
패키지와 타입 정보 얻기
- 패키지와 타입(클래스, 인터페이스) 이름 정보는 다음 메서드로 얻을 수 있음.
리소스 경로 얻기
- Class 객체는 클래스 파일(~.class)의 경로 정보를 기준으로 상대 경로에 있는 다른 리소스 파일(이미지, XML, Property 파일)의 정보를 얻을 수 있음.
https://github.com/bottomsUp-99?tab=repositories
728x90
반응형
'Java Study' 카테고리의 다른 글
Gson이란? (0) | 2024.07.18 |
---|---|
데이터 입출력 (2) | 2024.07.17 |
Lamda(람다식) (0) | 2024.07.12 |
제네릭(Generic)이란? (0) | 2024.07.10 |
JDBC 라이브러리 (0) | 2024.07.07 |