java 프로그램은 많은 클래스로 구성
이러한 클래스를 폴더 형식으로 관리하는 것을 패키지라 함
패키지 이름 결정 요령
kr.프로젝트이름.회사명
패키지 생성시 .
을 통해 트리로 관리 가능
패키지 안에 클래스 존재
package com.java.employee;
public class Employee{}
import 패키지명.클래스명;
import 패키지명.*;
// MainClass
package com.java.main;
import com.java.employeeBank.EmployeeBank;
public class MainClass {
public static void main(String[] args) {
EmployeeBank parkBank = new EmployeeBank("박찬호");
parkBank.saveMoney(100);
EmployeeBank leeBank = new EmployeeBank("이승엽");
leeBank.saveMoney(300);
// 원래대로라면 각각의 객체는 독립적이기 때문에 amount가 100, 300 이어야 함
// 그러나 해당 클래스를 보면 amount객체에 달린 static 키워드 때문에
// EmployeeBank의 amount 변수의 값은 400이 된다.
}
}
// EmployeeBank
package com.java.employeeBank;
public class EmployeeBank {
String name;
static int amount = 0;
// static이라는 키워드를 붙여서 해당 변수를 객체간에 공유가능하게 만들 수 있음
public EmployeeBank(String name) {
this.name = name;
}
public void saveMoney(int money) {
amount += money;
System.out.println("amount : " + amount);
}