자바_기본_패키지

Posted by Start Bootstrap on May 17, 2020 · 4 mins read

[자바 기본] 6. 패키지

6.1 패키지

자바에서 패키지란 서로 관련 있는 클래스나 인터페스의 컴파일된 클래스 파일들을 한곳에 묶어 놓은 것

클래스 지칭시에 패키지명을 포함하는 경로명을 사용해야한다.

6.2 import와 클래스 경로

원래의 경우 다른 패키지의 클래스를 사용하기 위해서는 패키지명을 포함한 경로를 모두 표시해줘야 한다.

Ex) 스캐너를 사용해야하는 경우

java.util.Scanner scanner = new java.util.Scanner(System.in);

하지만 import문을 사용함으로써

import java.util.Scanner;

Scanner scanner = new Scanner(System.in);

매번 전체 경로명을 사용하지 않아도 된다.

패키지 안에 전체 클래스를 지정하는법 : *을 사용한다.

import java.util.*;

6.3 패키지 만들기

클래스 작성시 패키지를 정해주지 않으면 default 패키지에 속하게 된다.

패키지의 특징
  • 패키지 계층 구조
  • 패키지별 접근 제한
  • 동일한 이름의 클래스가 다른 패키지에 존재 가능
  • 높은 소프트웨어의 재사용성

6.4 자바 JDK에서 제공하는 패키지

자바API란 : 자바에서 제공하는 기본 패키지를 의미한다.

주요 패키지

java.lang : 문자열, 수학 함수, 입출력 등을 제공한다. 특징 : import를 하지 않아도 자동으로 import됨

java.util : 날짜, 시간, 벡터, 해시 테이블 등과 같이 다양한 유틸리티 클래스와 인터페이스를 제공한다.

java.io : 키보드, 모니터, 프린터, 디스크 등에 입출력을 할 수 있는 클래스와 인터페이스를 제공한다.

java.awt : GUI 프로그래밍에 관련된 클래스와 인터페이스를 제공한다.

6.5 Object 클래스

Object 클래스java.lang 패키지에 속한 클래스로서 자바 클래스 구조의 최상위에 있다. 그러므로 모든 클래스는 Object의 서브 클래스이다.

객체비교와 equals()메소드

==를 객체 비교시 : 러퍼런스 즉 주소값, 같은 객체를 가리키는지 비교한다.

equals()메소드를 객체 비교시 : 객체 안의 내용들이 값을 비교한다.

6.6 Wrapper 클래스

Wrapper 클래스라는 이름의 클래스는 존재하지 않는다.

8개의 기본 데이터를 객체 형식으로 다루기 위한 클래스들의 통칭을 의미힌다.

Wrapper 클래스 : Byte, Short, Integer, Long, Character, Double, Float, Boolean

박싱과 언박싱

박싱 : 기본 데이터 타입을 Wrapper클래스로 변환 //

Integer ten = new Integer(10);

언박싱 : Wrapper클래스에서 기본 데이터 타입으로 변환

int i = ten.intValue();

6.7 String 클래스

자바에서 모든 스트링은 기본 데이터타입이 아닌 String 객체로써 다뤄진다.

또한 한번 생성된 스트링객체는 수정이 불가능하다.

String 활용

메소드 설명
char charAt(int index) 문자값 리턴
int condePoinAt(int index) 유니코드값 리턴
int compareTo(String anotherString) 사전적 순서 기준으로 현 스트링이 지정된 스트링보다 사전적으로 먼저나오면 음수, 아니면 양수 리턴
String concat(String str) str을 현재 스트링 위에 덧붙임
boolean contains(CharSequence s) 현재 스트링에 s가 포함되있으면 true리턴
int length() 길이 리턴
String replace(Charsequence target, Charsequence replacement) target문자열을 replacement문자열로 변환
String[] split(String regex) regex중심으로 스트링 배열로 분리해 리턴
String subString(int beginIndex) 문자열 추출
String toLowerCase() 모두 소문자로
String toUpperCase() 모두 대문자로
String trim() 공백제거