STUDIES/JAVA

Java - 8. 자바 API패키지

두퍼 2022. 10. 25. 09:54

1 . 패키지 (package)

📍관련 있는 클래스들을 하나로 묶는 것

 

종류 

- 내장 패키지 (자바 기본 api)

- 사용자 정의 패키지

 

왜 패키지가 필요할까?

- 패키지를 이용하면 서로 관련된 클래스들을 하나의 단위로 모을 수 있다

- 패키지가 중요한 이유 중 하나 "이름 공간(name space)": 동일한 이름의 클래스가 각 다른 패키지 속할 수 있어 이름 충돌 방지

- 패키지를 이용한 세밀한 접근 제어 구현, 패키지 안의 클래스들은 패키지 안에서만 사용 가능

 

패키지의 사용

- 완전한 이름으로 참조한다. 

graphics.Rect rect = new graphics.Rect();

- 패키지 안에서 우리가 원하는 클래스만을 포함한다

import graphics.Rect;

Rect rect = new Rect();

- 패키지 안의 모든 클래스를 포함한다. 

import graphics.* // * 패키지 내의 모든 클래스 포함

Rect rect= new Rect();

 

계층 구조의 패키지 포함

- 예를 들어 java.awt.*를 포함 시키면 java.awt 아래에 있는 패키지 즉 java.awt.font와 같은 패키지가 자동으로 포함될 거라소 생각하기 쉽다.

- 그러나 java.awt.font패키지는 자동으로 포함되지 않으며 별도로 써주야한다

import java.awt.*;
import java.awt.font.*;

 

자바 API패키지

Object Class

- java.lang 패키지에 들어 있다

- 자바 클래스 계층 구조에서 맨위에 위치하는 클래스

- getClass()

- toString()

- equals()

 

2. 랩퍼 클래스(Wrapper Class)

 📍정수와 같은 기초 자료형도 객체 포장하고 싶은 경우

int i = 100;
Integer obj = new Integer(i);

랩퍼 클래스 메소드의 예

⭐️ 문자열 "100"을 정수 100으로 변환하려면

int i = Integer.parseInt("100");

오토박싱

📍랩퍼 객체와 기초 자료형 사이의 변환을 자동으로 해주는 기능 (형식을 갖추지 않고 바로 변환 가능)

Integer obj;
obj = 10; //정수 >> integer객체
System.out.println(obj + 1); // Integer객체 >> 정수

 

3. String 클래스 (내용 변경 불가 클래스)

- 문자열을 위한 클래스

String s1 = "Java"; //많이 사용 되는 방법
String s2 = "Java";
String s3 = new String("Java"); // 원칙이긴 함
String s4 = new String("Java");

 

문자열의 기초 연산

- length(): 문자열의 길이 

- charAt(index): string객체 안에 들어 있는 문자를 추출

- concat(): 2개의 문자열을 붙일 때(물론 +연산자 사용이 더 편리하긴 함)

 

문자열 비교하기

String s1 = "Java"; //많이 사용 되는 방법
String s2 = "Java";
String s3 = new String("Java");

System.out.println(s1.equals(s2)); //true 올바른 방법
System.out.println(s1.equals(s3)); //true 올바른 방법
System.out.println(s1==s2); //true 하지만 틀린 방법
System.out.println(s1==s3); //false 올바르지 않은 방법

문자열 단어로 분리 할 때

- split() 이용

-ex split(" ") 일 경우 공백으로 단어를 나눔

 

StringBuffer클래스

📍자바는 변경 가능한 문자열으루위하여 String클래스의 대안을 StringBuffer클래스를 제공한다.

- 빈번하게 문자열을 변경할 때 효율적

 

사용 메소드

- append()

- insert()

'STUDIES > JAVA' 카테고리의 다른 글

Java - 9. 자바 GUI  (0) 2022.11.01
Java - 클래스와 객체  (0) 2022.10.24
Java - 7. 추상 클래스, 인터페이스, 중첩클래스  (0) 2022.10.24
Java - 6. 상속  (0) 2022.10.22