□ 패키지(package)
○ Java 프로그램은 많은 클래스로 구성되고 이러한 클래스를 폴더형식으로 관리하는 것을 패키지라고 함
○ 패키지명은 패키지에 속해 있는 클래스가 최대한 다른 클래스와 중복되는 것을 방지
○ 패키지명은 일반적으로 도메인을 거꾸로 이용
○ 개발중 패키지 이름과 구조는 변경될 수 있음
○ 패키지명만 보고도 해당 패키지 안에 있는 클래스가 어떤 속성과 기능을 가지고 있는 예상이 될수 있도록 이름을 만듬
□ 임포트(import)
○ 다른 패키지에 있는 클래스를 사용하기 위해서는 import 키워드를 이용
예제 1) 다른 패키지 생성 및 클래스 생성 + 다른 패키지의 클래스파일 임포트
(*패키지는 별도 디렉토리에 생성하여 진행했음)
package src.java; //패키지명 및 경로 지정
//다른 패키지에 있는 클래스에 있는 객체를 사용하고자, 호출하고자하는 객체가 포함된 패키지의 클래스를 임포트
import pjt_test.Newer_Class_Third;
public class CLASS {
//다른 패키지에 있는 클래스를 임포트하여 객체 생성
Newer_Class_Third Other_Class_Import = new Newer_Class_Third();
}
예제 1-1) 기존 클래스에서 새로 생성된 패키지와 해당 패키지에 생성된 클래스 임포트하여 객체 생성
package pjt_test;
//다른 패키지에 있는 클래스에 있는 객체를 사용하고자, 호출하고자하는 객체가 포함된 패키지의 클래스를 임포트
import src.java.CLASS;
public class Newer_Class_Third {
//다른 패키지에 있는 클래스를 임포트하여 객체 생성
CLASS Import_Class = new CLASS();
}
□ 스태틱(static)
○ 클래스의 속성과 메서드에 static 키워드를 사용한다면 어디서나 속성과 메서드를 공유할 수 있음
예제 2) 클래스 생성 및 클래스에 대한 속성(전역변수)중 특정 속성을 Static을 활용해 모든 객체에서 공유되는 속성으로 지정
package pjt_test;
public class Bank_Money {
String name;
//Static을 사용하요 모든 객체간에 해당 변수가 공유되도록 지정
static int sum = 0;
public Bank_Money(String name) {
this.name = name;
}
public void Save_Money(int money) {
sum += money;
System.out.println("추가금액 : " +money +"\n 누적금액 : " +sum );
}
public void getBankInfo() {
System.out.println("입금자명 : " +this.name);
System.out.println("누적금액 : " +this.sum);
}
}
예제 2-1) 클래스를 활용하여 객체 3개 생성 및 클래스에서 Static을 활용해 지정한 속성을 모든 객체에서 공유하도록 구현
package pjt_test;
public class Bank_Money_Main {
public static void main(String[] args) {
//클래스 활용하여 객체 1 생성 및 클래스 메서드 활용
//객체에서 입력받은 매개변수는 클래스의 지역변수로 전달됨
Bank_Money kBank = new Bank_Money("김뭐시기");
kBank.Save_Money(1000000);
kBank.getBankInfo(); //Static 이 붙은 변수 sum으로 인하여 money 값이 추가 될때마다 다른 객체들과 공유되어 연산됨
Bank_Money bBank = new Bank_Money("박뭐시기");
bBank.Save_Money(2222222);
bBank.getBankInfo(); //Static 이 붙은 변수 sum으로 인하여 money 값이 추가 될때마다 다른 객체들과 공유되어 연산됨
Bank_Money cBank = new Bank_Money("찰리뭐시기");
cBank.Save_Money(5555555);
cBank.getBankInfo(); //Static 이 붙은 변수 sum으로 인하여 money 값이 추가 될때마다 다른 객체들과 공유되어 연산됨
}
}
'Java > Java_basic' 카테고리의 다른 글
Step15. 상속과 Private 접근자 (0) | 2023.09.25 |
---|---|
Step14. 데이터은닉과 Getter/Setter (0) | 2023.09.24 |
Step12. 생성자와 전역/지역/매개변수, this (2) | 2023.09.24 |
Step11. 객체와 메모리 (0) | 2023.09.22 |
Step10. 객체 - 메서드와 접근자 (0) | 2023.09.22 |