본문 바로가기

개발공부/JAVA

자바스터디 7주차 feat.백기선님 (패키지)

package 키워드

: 서로 관련있는 클래스나 인터페이스의 컴파일된 .class를 그룹 단위로 모아놓은 것

: 하나의 디렉토리에 저장된 클래스파일들을 지칭

: 클래스를 지칭할때는 패키지명을 포함하는 경로명을 사용해야 함

ex) java.awt.color

=> java.awt 까지가 패키지명, color가 클래스명

 

- 하나의 소스파일에는 첫 번째 문장으로 단 한 번의 패키지 선언만을 허용한다.

- 모든 클래스는 반드시 하나의 패키지에 속해야한다.

- 패키지는 점(.)을 구분자로 하여 계층구조를 구성할 수 있다

- 패키지는 물리적으로 클래스파일(.class)을 포함하는 하나의 디렉토리이다.

 

* package 선언

package 패키지명;

 

* 주요 package 

1. java.lang : 자동 임포트 / 기본 클래스, 인터페이스 포함

2. java.util

3. java.io : 입출력

4. java.awt : GUI 프로그래밍


import 키워드

: 컴파일러 시에 컴파일러는 import문을 통해 소스파일에 사용된 클래스의 패키지를 알아 낸 다음, 모든 클래스이름 앞에 패키지명을 붙여준다.

 

* import문 선언

import 패키지명.클래스명;

또는
 
import 패키지명. * ;
//패키지의 모든 클래스를 사용하고자함을 컴파일러에게 알려주는 문

클래스패스

: 컴파일러(javac.exe) 나 JVM 등이 클래스의 위치를 찾는데 사용되는 경로이다.

 

클래스 패스를 지정하는 방법에는 2가지 방법이 있다.

1. CLASSPATH 환경변수 설정

2. -classpath 옵션

 

CLASSPATH 환경변수 설정

: 제어판/시스템/고급/환경변수

환경변수 설정란 CLASSPATH라는 변수를 추가해서 jdk 있는 경로를 설정해주는 방법

 

jdk란?

: Java Development Kit

: 많은 클래스들 패키지로 묶어서 제공함

: 기본패키지를 자바 api로 제공해서 사용하게끔 함

 

-classpath 옵션

: java 실행기로 ImportExample 응용프로그램을 실행할때 -classpath 옵션으로 직접 클래스 파일의 위치를 지정

java -classpath "jdk경로/jre/lib"

 

 


클래스 접근지정자

: 다른 클래스에서 이 클래스 이름을 사용할 수 있는지 허용 여부를 지정하는 것

 

1. public : 어떤 다른 클래스에서도 사용할 수 있다.

2. default (접근지정자 생략한 경우) : 같은 패키지 내에 있는 클래스들만 접근 가능

 


멤버 접근지정자

1. public :  패키지 내부, 외부 등 모든 클래스에서 접근이 가능하다.

2. private 같은 클래스 내부 멤버에 의해서만 접근이 가능하다.

3. protected  같은 패키지 내의 모든 클래스에서 접근이 가능하다. 다른 패키지라도 이 클래스를 상속받은 자식은 접근가능.

4. default :  동일 패키지 내에 있는 모든  클래스에서 접근 가능하다.


github.com/whiteship/live-study/issues/7

 

7주차 과제: 패키지 · Issue #7 · whiteship/live-study

목표 자바의 패키지에 대해 학습하세요. 학습할 것 (필수) package 키워드 import 키워드 클래스패스 CLASSPATH 환경변수 -classpath 옵션 접근지시자 마감일시 2021년 1월 2일 토요일 오후 1시까지.

github.com