패키지
패키지는 클래스를 하나로 모아 놓은 것이다. 패키지에 포함된 클래스는 해당 패키지를 호출하기 위해 한 줄만 기술하여 사용할 수 있다. 패키지가 다르면 동일한 이름의 클래스도 존재할 수 있다. 패키지 안에서 다른 패키지를 이용할 경우는 패키지 선언을 먼저 기술한다.
패키지 선언
package pack1; //파일 처음에 쓴다.
public class A { }
패키지 임포트
다른 패키지에 포함된 클래스나 인터페이스를 이용한다.
import pack1.B;
class C { B b = new B(); }
랩퍼클래스
java 의 기본데이터형에 대응하는 클래스가 존재한다. 이 클래스를 랩퍼클래스라고 하며 변수와 같이 사용할 수 있다.
기본데이터형의 랩퍼클래스
기본데이터형 |
랩퍼클래스 |
byte |
Byte |
short |
Short |
int |
Integer |
long |
Long |
float |
Float |
double |
Double |
char |
Character |
boolean |
Boolean |
수치형 랩퍼 클래스에는 다른 형으로 변환한 값을 얻을수 있는 메소드가 있다.
byteValue(), shortValue(), intValue(), longValue(), floatValue(), doubleValue()
랩퍼 클래스의 오브젝트끼리 비교하기 위해서는 equals() 메소드를 사용한다. 동일할경우 true를 반환한다.
정수형 랩퍼 클래스는 각각 문자열을 정수형으로 변환하는 메소드가 있다.
parseByte(), parseShort(), parseLong(), parseInt()
String 클래스 메소드
int l = a.length(); // a 문자열의 길이를 리턴한다.
String a = "ABCDEF";
String b = a.substring(2,5); // CDE 를 리턴한다.
int c = a.compareTo(b); // a와 b문자열을 사전적으로 비교한다. a가 앞이면 음수, 같으면 0, 뒤면 양수를 반환한다. (대소문자 구분)
StringTokenizer a = new StringTokenizer(b,",") // b문자열을 , 구분문자로 구분하여 a 문자열(Token)로 리턴한다 구분문자가 없을경우 공백으로 구분한다.
hasMoreTokens() // 토큰이 있을경우 true 리턴한다.
nextToken() // 토큰을 차례대로 가져온다.
시스템 프로퍼티
시스템 환경설정 정보를 얻을 수 있다. java.util 패키지를 import 하여 사용할 수 있다.
import java.util.*;
String str = System.getProperty("java.version"); // getProperty() 에 원하는 프로퍼티를 지정하여 환경설정 정보를 얻는다.
주요프로퍼티
프로퍼티 |
의미 |
java.version |
자바버전 |
java.vendor |
자바벤더 |
java.vendor.url |
자바벤더 URL |
java.home |
자바 인스톨 디렉토리 |
java.class.version |
자바 클래스 버전 |
java.class.path |
자바클래스 경로 |
java.ext.dir |
확장기능 클래스 포함하는 디렉토리 |
os.name |
OS 이름 |
os.arch |
OS 아키텍처 |
os.version |
OS 버전 |
file.separator |
파일 구분문자 |
path.separator |
경로 구분문자 |
line.separator |
행 구분문자 |
user.name |
사용자 계정 |
user.home |
사용자 홈 디렉토리 |
user.dir |
현재 작업 디렉토리 |
이 내용은 ANK Co.,Ltd. 저 김성훈 역의 Java가 보이는 그림책에서 요약 발췌하였습니다.
'SW > Java' 카테고리의 다른 글
클래스다이어그램 관계 relationship (0) | 2023.05.19 |
---|---|
멀티스레드 Math클래스 비트연산자 시프트연산자 File클래스 제네릭 열거형 (0) | 2017.01.15 |
예외처리 파일스트림 텍스트파일읽기쓰기 (0) | 2017.01.15 |
추상클래스 인터페이스 다형성 오브젝트복제 (0) | 2017.01.15 |
상속 오버라이딩 접근제한자 (0) | 2017.01.15 |