자바에서 지원하는 패키지
라이브러리란 여러 가지 기능을 제공하는 파일이다. 자바도 라이브러리를 제공하는데 자바에서는 그걸 API라 부른다
자바API는 자바 클래스 파일(*.class)로 구성된다
Java SE에서 제공하는 API는 자바 프로그램을 개발하기 위해 설치한 JDK에 포함되어 있다
API는 jmods 파일 형태(모듈파일)로 저장되어있다.
모듈은 관련있는 여러 개의 자바 패키지(API)를 하나로 묶어 놓은 단위이다
JAVA의 API문서
- 자바에서 제공하는 API를 편리하게 사용할 수 있도록 API문서를 제공
- HTML 페이지로 작성되어 있어 웹 브라루저로 바로 볼 수 있음
자바에서 지원하는 패키지
패키지 | 기능 |
java.io | 외부 데이터 입출력을 처리하는 기능 |
java.lang | 프로그램 개발시 기본적으로 필요한 기능![]() |
java.net | 네트워크를 위한 클래스와 인터페이스 |
java.security | 보안 프레임워크를 위한 클래스와 인터페이스 |
java.sql | 데이터베이스에 저장된 데이터를 접근하기 위한 기능 |
java.util | 날짜, 시간, 컬렉션(Collection) 처리에 관한 기능 |
java.awt | 그래픽과 이미지 관련 기능 |
java.swing | UI 구현 기능 |
< java.lang 패키지 >
- 자바 프로그램의 기본적인 클래스를 담은 패키지
- 포함된 클래스와 인터페이스는 import 없이 사용
Class | 설명 |
Object | 모든 클래스의 최상위 클래스 |
Math | 각종 수학 메서드(최대값, 최소값, 난수)들을 포함하는 클래스 |
Wrapper | ⦁ 기본 자료형(기초형)에 대응된 클래스 ⦁ 기본 타입의 데이터를 갖는 객체를 만들 떄 사용 ⦁ 문자열을 기본 타입으로 변환할 때 사용 |
String | 문자열을 저장하고 여러가지 정보를 얻을 때의 클래스 |
System | ⦁ 표준 입출력 클래스 ⦁ 표준입력 장치(키보드)로부터 데이터를 입력받을 때 사용 ⦁ 표준 출력 장치(모니터)로 출력하기 위해서 사용 |
Class | JVM에 로드된 클래스에 대한 정보를 얻기 위한 클래스 |
< java.util 패키지 >
Class | 설명 |
Arrays | 배열을 조작(비교,복사,정령,찾기) 할 때 사용 |
Calender | 운영체제의 날짜와 시간을 얻을 때 사용 |
Data | 날짜와 시간을 얻을 때 사용 |
Objects | 객체비교, 널(null) 여부 등을 조사할 때 사용 |
StringTokenizer | 특정 문자로 구분된 문자열을 나누고자 할 때 사용 |
Random | 난수를 얻을 때 사용 |
< Object 클래스 >
⦁ 모든 클래스의 최상위 클래스
⦁ 모든 클래스는 명시적으로 "extends"예약어를 지정하지 않아도 자동으로 java.lang.Object 클래스로 부터 상속받도록 컴파일 된다
⦁ 모든 클래스는 묵시적으로 Object 클래스의 필드와 메서드를 모두 상속받게 된다
Object class | System class |
String class | |
Number class | |
ect ... |
✔ 패키지 생성
Object class안에 정의되어 있는 메소드 | |
protected Object clone() | 객체가 자신의 복사본을 생성하여 반환한다 |
public boolean equals(Object obj) | obj가 이 객체와 같은지를 나타낸다 |
protected void finalize() | 가비지 콜렉터에 의하여 호출된다 |
public final Class getClass() | 객체의 실행 클래스를 반환한다 |
public int hashCode() | 객체에 대한 해쉬 코드를 반환한다 |
public String toString() | 객체의 문자열 표현을 반환한다 |
✔ 객체 비교 equals (메서드)
public boolean equals (Object obj) {return(this==obj);} |
⦁ 기본적으로 연산자와 동일한 결과(==) 리턴 ⦁ 논리적 동등(같은 객체이건 다른객체이건 상관없이 객체 저장 데이터가 동일)을 위해 오버라이딩 필요 ⦁ Object의 equals() 메서드: 재정의하여 논리적 동등 비교할 때 이용 |
✔ 객체 해시코드 hashCode()
객체 해시코드란? - 객체를 식별한 하나의 정수값 - 객체의 메모리 주소값을 이용해 해시코드가 만들어지며 리턴 - 개별객체는 해시코드가 모두 다름 |
객체는 저마다 고유한 값이 있다 즉 메모리에 생성된 인스턴스의 주소값을 가지고 일련번호를(해시코드) 만들어 반환하는 메서드가 hashCode()이다 해시코든은 인스턴스가 메모리에 생성되는 주소값을 기초로 만들어지는 만큼 서로 다른 인스턴스는 해시코드값이 같을 수 가 없다 |
✔ 객체 문자 정보 toString()
⦁ 객체가 가진 값을 문자열로 제공한다

① getClass() | 현재 클래스에 대한 정보를 가진 Class객체를 반환한다 |
② getName() | 현재 클래스의 이름은 반환한다 |
③ hashCode() | 현재 인스턴스의 해시 코드값을 반환한다 |
④ Integer.toHexString() | 인자로 전달된 int값을 16진수 문자열로 변환하여 반환한다 |

일반적으로 의미 있는 문자정보가 나오도록 메서드 오버라이딩 해야함
⦁ Data 클래스 - 현재 시스템의 날짜와 시간 정보 리턴
⦁ String 클래스 - 저장하고 있는 문자열 리턴 리턴
⦁ System.out.println(Object obj) 메서드
- Object의 toString()의 리턴값 출력
▶ String 클래스
⦁ 자바는 기초 자료형으로 문자열을 지원하지 않는다
⦁ 자바에서는 문자열을 클래스형으로 다룬다

실제로는 내부에서 char형의 배열 객체를 다룬다
String 클래스에는 문자열을 저장하고자 문자형 배열 변수(char[]) value를 인스턴스 변수로 정의해 놓고 있다
객체를 생성할 때 생성자의 매개변수로 입력 받은 문자열을 이 인스턴스 필드에 문자형 배열로 저장된다
✔ 문자열 객체 생성
String 클래스의 생성자를 사용하거나 문자열 리터럴을 지정하여 생성한다
1) String 클래스의 생성자를 사용해서 문자열 객체 생성

2) 문자열 리터럴을 사용해서 문자열 객체 생성

✔ String class

✔

⦁ String calss - 생성자
생성자 | 설명 |
String(String str) | 문자열을 갖는 String객체를 생성 |
String(char[ ] value) | 문자형 배열을 갖는 String객체를 생성 |
String(byte[ ] value) | 바이트 배열을 갖는 String객체 생성 |
⦁ String calss - 사용 빈도 높은 메서드
리턴타입 | 메서드명 (매개변수) | 설명 |
char | charAt(int index) | 지정된 인덱스위치에 있는 문자를 리턴한다 |
boolean | equals(Object anObj) | 전달받은 문자열(anObj)과 String객체의 문자열이 같은지 비교해 결과를 리턴한다 |
byte[] | getBytes() | 문자열을 바이트 배열(byte[])로 리턴한다 |
byte[] | getBytes(Charset charset) | 주어진 문자셋으로 인코딩한 byte[]로 리턴한다 |
int | indexOf(String str) | 문자열내에서 주어진 문자열의 위치를 리턴한다 (존재하지 않으면 -1리턴) |
int | length() | 총 문자의 수를 리턴한다 |
String | replace(char ilkdChar, char newChar) | 문자열내에서 oldChar를 newChar로 변환하여 리턴한다 |
String | substring(int beginIndex, int endIndex) | 시작 인덱스부터 마지막 인덱스 전까지 문자열을 리턴한다 |
String | toLowerCase() | 소문자로 변환한 새로운 문자열을 리턴한다 |
String | toUpperCase() | 대문자로 변환한 새로운 문자열을 리턴한다 |
String | trim() | 앞뒤 공백을 제거한 새로운 문자열을 리턴한다 |
String | valueOf(int i) valueOf(double d) |
기초 자료형의 값을 문자열로 리턴한다 |
String | concat(String srt) | 전달받은 문자열(str)을 해당 메서드를 호출한 String객체의 문자열 뒤에 합쳐 새로운 문자열을 생성해서 반환한다 |
String | contains(String srt) | 전달받은 문자열(str)이 String객체의 문자열에 포함되었는지를 검사한다 |
String | intern() | 문자열을 상수 풀에 등록하고 이미 같은 문자열이 존재하면 해당 문자열의 참조값을 반환한다 |
'Language > Java' 카테고리의 다른 글
스레드 (0) | 2022.03.10 |
---|---|
입출력 (Stream) (0) | 2022.03.03 |
컬렉션 (Collection) (0) | 2022.02.23 |
제네릭 Generic (0) | 2022.02.23 |
예외 (Exception Event) (0) | 2022.02.22 |