멍발자의 개발

Package & import 본문

STUDY/Java

Package & import

개발하는 멍발자 2022. 3. 28. 15:00

하나의 클래스 파일로 분할해서 만드는 게 복잡성을 줄일 수 있다.

 

클래스를 패키지에 포함

 

장점

1. 같은 역할을 가진 클래스를 1개의 패키지에 정리하므로 클래스가 가지는 의미 파악이 용이하다.

2. 같은 이름을 가진 클래스가 복수로 존재할 경우, 이름의 충돌을 피하여 이용할 수 있다.

3. 클래스, 메소드, 생성자, 멤버 변수에 패키지에 관련한 액세스 제한을 붙일 수가 있다.

 

다른 클래스 내에 클래스를 이용하기

이용되는 클래식 앞에 public 을 붙임

 

패키지명.클래스명 객체명 = new 패키지명.클래스명();

 

사용되는 액세스 수식자가 public이 되어있어야 한다. 

 

package chap17; // Computer3 클래스를 패키지에 포함

public class Computer3 { // Computer3클래스를 다른 곳에서 사용할 수 있도록 public을 추가함

    private String os;
    private int memory;

    public void show() {
        System.out.println("OS는" + this.os + "입니다.");
        System.out.println("메모리는 " + this.memory + "GB입니다.");
    }

    public void setOsMemory(String os, int memory) {
        //인수값을 필드변수로 설정
        this.os = os;
        this.memory = memory;
    }
}
package chap17;

public class DifferentPackage1 {

    public static void main(String[] args) {
        // 다른 패키지의 Computer3클래스를 완전 한정자명으로 지정하여 객체화
        chap17.Computer3 com = new chap17.Computer3();
        com.setOsMemory("Windows 11", 32);
        com.show();
    }
}

//결과
OS는Windows 11입니다.
메모리는 32GB입니다.

가져오기

다른 패키지의 클래스를 복수 이용하고 싶을 때 import를 이용하면 일일이 클래스명에 패키지를 기술하여 학습하는 번거로움을 줄일 수 있다.

 

서브 패키지 작동방식

 

패키지에 계층을 만들면 많은 클래스를 기능별로 분류할 수 있다.

패키지내에 다른 계층을 만드는 것을 서브 패키지라고 한다.

 

* = 패키지 영역 안에 있는 것만 사용할 수 있다.

 

다른 패키지의 클래스를 이용하는 경우, 패키지명.클래스명으로 이용할 수 있다.

'STUDY > Java' 카테고리의 다른 글

클래스 라이브러리  (0) 2022.04.01
예외 처리  (0) 2022.03.29
생성자  (0) 2022.03.23
액세스와 캡슐화  (0) 2022.03.23
클래스와 메소드  (0) 2022.03.22
Comments