JAVA공부하기 151

Wrapper클래스란

 

- 자바에서는 실행의 효율성을 위해 기본 자료형(8가지)을 직접 사용

: primitive Type <= 객체가 아니다.

: 그러나 Vector나 Stack 같이 Object를 매개변수로 받는 메소드에 타입을 직접 전달 할 수 없다.

 

- 8개의 기본 자료형과 관련된 클래스를 포장(wrapper)클래스라 한다.

 

- 기본자료형을 객체로 사용하면 해당클래스에서 제공되는 유용한 메소드들을 사용할 수 있다.(효율성은 값을 사용하는 방법보다 뒤진다)

 

- Wrapper 클래스

: Boolean, Character, Byte, Short, Integer, Long

: Float, Double

 

- Wrapper 클래스로부터 생성된 기본 자료형 객체의 값은 한번 생성된 다음에는 변할 수 없다.

 

 

 

JAVA공부하기149

StringBuffer 클래스

 

* 변할 수 있는 문자열을 가진다

* 생성자

: String Buffer()

-> 묵시적으로 16개의 문자를 저장할 수 있는 객체를 생성

: String Buffer(int size)

-> size 크기의 객체를 생성

: StringBuffer(String str)

-> str로 지정된 문자열과 추가로 16개의 문자를 더 저장할 수 있는 객체를 생성

: StringBuffer 객체는 객체의 크기가 변할 때 마다 메모리를 재할당 한다(16개의 문자를 저장할 수 있는 버퍼 단위로)

: 문자열을 조작하는 처리를 할 경우 String 보다 StringBuffer를 사용하는 것이 유리

-> 100배 이상 성능 차이 발생

-> String은 문자열을 수정하려 할 때 마다 새로운 객체 생성, 그에비해 StringBuffer는 객체에 담긴 내용만 수정

 

StringBuffer 클래스의 주요 메소드

 

 

StringBuffer 사용예제

 

JAVA공부하기148

String 클래스 _ 형 변환

 

* 다른 형의 데이터를 문자열로 변환하는 메소드

: static String valueOf(double num)

: static String valueOf(long num)

: static String valueOf(Object obj)

: static String valueOf(char chars[])

: static String valueOf(char chars[],int startlndex, int numChars)

 

* 대소문자 변환 메소드

: String toLowerCase()

: String toUpperCase()

 

 

 

JAVA공부하기 139

Method Naming Convention

 

메소드 이름

- 소문자로 시작하는 동사

- 이름 속에 포함된 각 단어는(첫 번째 단어를 제외하고) 대문자로 시작

- 자료형 T인 v라는 이름의 속성을 접근하기 위한 메소드 이름

 

 

Take, pick 등은 의미가 유사하더라도 사용하지 않는다.

 

 

JAVA공부하기 137

Package Naming Convention

 

패키지 이름의 이름 짓기 관례

- 널리 쓰이는 패키지인 경우

: 자신이 속한 조직의 인터넷 도메인 이름을 뒤집은 이름을 사용하여 패키지 이름 구성

: 부서, 프로젝트, 컴퓨터, 로긴 이름 등을 부가해서 패키지 이름을 만들 수 있다.

 

 

- 지역적으로만 사용하는 패키지인 경우

: 소문자로 시작

: java. 및 javax.는 자바 표준 패키지에만 사용되도록 예약되어 있음

 

 

 

 

JAVA 공부하기135

자바 아카이브 프로그램:jar (JDK1.1)

 

사용법

- jar {ctx} {vfm0 M} [jar-file] [manifest-file] files...

 

명령행 옵션(필수)

-  -t: JAR 파일 목록추출(table)

-  -x: JAR 파일로부터 구성파일 추출(extract)

-  -c: JAR 파일생성

 

명령행 옵션(생략가능)

-  -f: JAR 파일 이름(jar-file)이 명령행에 주어짐

-  -o: zip 압축을 하지않고 jar 파일 생성(디폴트는 압축)

-  -m: manifest-file파일로부터 manifest파일 생성

-  -M: manifest 파일을 jar 파일속에 만들지 않음

-  -v: 프로그램 수행 중 자세한 정보를 보여줌

 

명령행에 주어진 파일 이름이 디렉토리인 경우 재귀적으로 처리

 

CALSSPATH에 JAR파일사용

 

jar cvf MyApplication.jar -C

C:\java\workspace\package1\shape\

 

JAVA공부하기 133

클래스접근제어

 

클래스 접근제어자 - public

: public이 class앞에 있다면 그 클래스는 다른 패키지에서도 접근 가능

 

: 한개의 클래스에는 최대 1개의 public 클래스가 존재

: public 클래스가 존재하면 그 클래스 이름과 자바 원시 파일이름이 일치해야한다.

: *를 사용하여 import할 때 각 클래스의 포함 여부

- Private로 선언된 클래스 : 포함 불가능

- Protected로 선언된 클래스 : 포함 불가능

- 접근 지정자를 생략한 클래스 : 포함 불가능

- Public으로 선언된 클래스 : 포함가능

 

자바공부하기128

패키지사용법

 

패키지의 클래스와 인터페이스를 사용하기 위해서

Improt 문장을 사용하면 패키지 이름을 생략하고, 클래스/ 인터페이스 이름만을 사용할 수 있다.

* import 패키지이름.클래스이름

* import 패키지이름.*

 

: 부 패키지는 import 되지 않는다.

* 별도로 import해야함

* import java.awt.*라고 했다고 해서 java.awt.color.*까지 import되는 것은 아님

* 단지 java.awt 패키지 내의 클래스만 import

 

* 컴파일 시 자동으로 importjava.lang.*가 자동삽입

 

패키지 사용

 

 

 

 

+ Recent posts