Archive for the ‘言語’ Category
Javaのコンストラクタの覚え書き
クラスの連携においてコンストラクタを使用する時の注意事項
コンストラクタとは?
インスタンスを生成する際、初期化処理をするために定義する特別なメソッド
コンストラクタの特徴
クラスのコンストラクタの有無の違い
1)コンストラクタのないクラス
「デフォルトコンストラクタ」があるとみなされる
–>この場合、引数無し,処理無し
2)コンストラクタがあるクラス
自分が用意したコンストラクタのどれかひとつを必ず利用する必要がある
※デフォルトコンストラクタはない
public class Person {
public int age;
public Person() {
age = 0;
}
}
複数定義した場合は下記のようになる
public class Person {
public int age;
public Person() {
age = 0;
}
public Person(int a) {
age = a;
}
}
資料:(128ページあたり)http://www.knowledge-ex.jp/opendoc/JavaProgramming.pdf
Wordle
OSC2009
マルチスレッド03
カウンターにコーヒーが並んでいるか確認するところ
class ShopMaster extends Thread{
Counter counter;
ShopMaster(Counter theCounter){
this.counter = theCounter;
}
マスターがコーヒーを作るところが処理される
public void run(){
while(true){
try{
counter.putCoffee();
//コーヒーをぼちぼち作る
Thread.sleep((int)(3000 * Math.random()));
}catch(InterruptedException e){}
}
}
}
作られたコーヒーが誰によって作られたか表示される
class CoffeeDrinker extends Thread {
Counter counter;
String name;
CoffeeDrinker(Counter theCounter.String theName){
this.counter = theCounter;
this.name = theName;
}
ここから作られたコーヒーを飲むところが始まる
public void run(){
while(true){
try{
counter.getCoffee(this.name);
//コーヒーをボチボチ飲む
Thread.sleep((int)(10000 * Math.random()));
}catch(InterruptedException e){}
}
}
}