728x90
패키지 : 관련 클래스의 모음
- 관련된 클래스, 인터페이스, 하위 패캐지를 하나로 묶음
패키지의 구조
- 최상위패키지.하위패키지.하위패키지 util에 있는 클래스
장점
- 재사용성, 더 나은 조직화, 이름 충돌 방지, 접근 제어
패키지와 접근제한자의 관계
패키지 유형
- 사용자 정의 패키지 : 클래스와 인터페이스 분류 위해 생성하는 패키지
- 내장 패키지 : java.io., java.lang. 처럼 이미 정의된 패키지
Section 02. 패키지 생성 및 사용
패키지 선언 : package 패키지명;
패키지명 규칙 : 숫자시작x, 특수문자(_, $만 가능), java로 시작x, 예약어x, 소문자 작성이 관례
패키지 사용 :
- 패키지명.클래스명
- 패키지명.* : 하위 패키지엔 접근x
- ‘정규화된 이름’ 형식 : import 명령어 필요x
Section 03. 내장 패키지
내장 패키지
- java.lang (lang은 import 안 해도 됨) : 문자열, 수학, 입출력
- java.util : 유틸리지. 날짜, 시간, 벡터, 해시맵 등 유틸리티 클래스, 인터페이스
- java.text : 날짜, 시간, 문자열 등 현지화 처리
- java.io : 입출력 처리 패키지
- java.net : 네트워크 프로그램 구현
- 기본 패키지(java로 시작), 확장 패키지(javax로 시작)
Section 04. java.lang 패키지
Object 클래스
- 모든 클래스의 상위
toString(), equals(),
Math 클래스
- 내의 모든 메서드는 정적 메서드 → 객체 생성 안 해도 사용o
String 클래스
- 문자열 리터럴은 String 클래스의 인스턴스로 구현됨
StringBuffer 클래스
- 문자열 나타냄
- 인스턴스는 그 값을 변경, 추가 가능
StringBuilder 클래스
- 변경 가능한 문자열, 동기화 안 되는 거 빼곤 StringBuffer와 동일
- JDK 1.5부터 사용할 수 있는 StringBuilder 클래스는 대부분의 구현에서 빠르기 때문에 StringBuffer보다 우선적으로 사용하는 것이 좋음
래퍼 클래스
- 8개의 기본 자료형에 해당하는 데이터를 객체로 포장하는 클래스
- 기본 자료형을 객체로 변환하여 사용
Section 05. java.util 패키지
java.util 패키지
- 유틸리티 성격의 클래스, 인터페이스 모아둔 패키지
- Date, Calendar 등의 날짜 관련 클래스 포함
- List, Set, Collection, Map등 다양한 자료 구조 모아둔 컬렉션 프레임워크도 o
Date 클래스
- JDK 1.1부터는 날짜와 시간 필드를 변환하는 데 Calendar 클래스를 사용하고, 날짜 문자열의 형식을 지정하고 구문을 분석하는 데 DateFormat 클래스를 사용
Calendar 클래스
- YEAR, MONTH, DAY_OF_MONTH, HOUR 등의 달력 필드 집합, 특정 순간 간의 변환 메서드,
다음 주의 날짜를 가져오는 것처럼 달력 필드를 조작하는 메서드를 제공하는 추상 클래스 - 추상 클래스이므로 new로 객체 생성 불가
- Calendar.getInstance()이용 or Calendar 상속받는 GregorianCalendar 클래스 이용 하여 객체 생성
StringTokenizer 클래스
- 특정한 구분자(delimiter)로 연결되어 있는 문자열을, 토큰이라는 여러 문자열로 분리하는 데 사용
- 구분자 : 특수 문자, 공백, 한 문자, 문자열
Random 클래스
- 난수 생성에 사용
Section 06. java.text 패키지
java.text 패키지
텍스트, 날짜, 숫자, 메시지를 일정한 형식에 맞게. 클래스, 인터페이스 모아둔 패키지
현지화 필요한 데이터의 효율적 처리 위한 패키지
지역에 민감한 데이터를 현장에 맞게 문자열로 표현, Format 클래스 포함
DateFormat 클래스
- 국가별 설정 상관없이, 날짜/시간 형식화(날짜→텍스트) or 구문분석(텍스트→날짜) 위한 추상 클래스
- 추상클래스 이므로 new 객체 생성x
DateFormat.getInstance() 또는 DateFormat.getDateInstance() 메서드 이용하여 객체 생성 o
SimpleDateFormat 클래스
- 민감한 방식으로 날짜 형상화, 구문분석 위한 구체적인 클래스
- 날짜-시간 형식을 위한 사용자 정의 패턴 사용o
728x90
'Programming > JAVA' 카테고리의 다른 글
[JAVA] Optional<> 이 뭘까? (0) | 2024.03.07 |
---|---|
[JAVA] 간단한 회원관리 프로그램 (0) | 2024.01.10 |
[JAVA] 9. 추상클래스와 인터페이스 (0) | 2023.10.23 |
[JAVA] 8. 상속과 다형성 (0) | 2023.10.19 |
[JAVA] 7. 클래스와 객체 (0) | 2023.10.19 |