Next: 9.4 java.utilパッケージの利用
Up: 9 パッケージ
Previous: 9.2 JDK1.4でのパッケージ
パッケージ内のライブラリを使うにはimport文を使う.
自分でパッケージを作る場合はpackage文を使う.
パッケージ名は,そのクラスファイルが置かれている
ディレクトリ名と同じ名前とする.
/*
* ap/application/Main.java
* 下村:Javaによるインターネットプログラミングより.
* 近代科学社.
*/
package application;
import resource.*;
/**
* ガソリンスタンドで給油を行います.
*/
public class Main {
public static void main (String[] args) {
GasStation gs = new GasStation(1000);
Car car1 = new Car(100);
Car car2 = new Car(200);
Tank tank1 = new Tank(400, 350);
gs.fillUp(car1);
gs.fillUp(car2);
gs.fillUp(tank1);
gs.fillUp(gs);
}
}
/*
* ap/application/GasStation.java
*/
package application;
import resource.*;
/**
* ガソリンスタンドの役割を果します。
*/
public class GasStation extends Tank {
/**
* ガソリンスタンドを生成します。
* @param capacity タンクの容量と残油量
*/
public GasStation(int capacity) {
super(capacity, capacity);
}
/**
* タンクを満タンにします。
* @param tank タンク
*/
public void fillUp(Tank tank) {
int amount = tank.fillUp();
int remain = getFuel() - amount;
setFuel(remain);
System.out.println(tank + ": 給油量 = " + amount);
System.out.println(this + ": 残油量 = " + remain);
}
}
/*
* ap/application/Car.java
*/
package application;
import resource.*;
/**
* 自動車の役割を果します。
*/
public class Car extends Tank {
/**
* 指定された容量のタンクをもつ、自動車を生成します。
* @param capacity タンクの容量
*/
public Car(int capacity) {
super(capacity, 0);
}
}
/*
* ap/ressource/Tank.java
*/
package resource;
/**
* タンクの役割を果します。
*/
public class Tank {
private int capacity = 0;
private int fuel = 0;
/**
* タンクを生成します。
* @param capacity タンクの容量
* @param fuel 残油量
*/
public Tank(int capacity, int fuel) {
this.capacity = capacity;
this.fuel = fuel;
}
/**
* 残油量を取得します。
* @return 残油量
*/
public int getFuel() {
return fuel;
}
/**
* 残油量を設定します。
* @param amount 残油量
*/
public void setFuel(int amount) {
fuel = amount;
}
/**
* タンクを満タンにします。
* @return 給油量
*/
public int fillUp() {
int amount = capacity - fuel;
fuel = capacity;
return amount;
}
}
% cd ap
% javac application/Main.java
% java application.Main
application.Car@7b7072: 給油量 = 100
application.GasStation@136228: 残油量 = 900
application.Car@113750: 給油量 = 200
application.GasStation@136228: 残油量 = 700
resource.Tank@4672d0: 給油量 = 50
application.GasStation@136228: 残油量 = 650
application.GasStation@136228: 給油量 = 350
application.GasStation@136228: 残油量 = 650
generated through LaTeX2HTML. M.Inaba 平成18年5月7日