Category: SCJ-P(解説)
他のパッケージのクラスやインターフェイスを使う場合、完全修飾名(*1)を使うことも出来るが、インポート宣言をすることで修飾部分を省略することが出来る。

例えば、java.utilにあるVectorクラスを使用する時に
import宣言をしていない場合は
java.util.Vector vector;
と記述する必要があるが、

import java.util.Vector;
とパッケージ宣言のあとに記述してある場合は

単にクラス名で
Vector vector;
のように記述することが出来る。

また、パッケージ直下の全てのクラスを1行でインポートすることも出来る。
import java.util.*;
このように記述することで
java.utilパッケージ直下の全てのクラスをインポートしたことになり、

この場合も
Vector vector;
のような形で記述することができる。

と記述する


*1完全修飾名
java.utilと言うパッケージにあるVectorクラスを
java.util.Vectorのように表すのを完全修飾名と言う。
Category: SCJ-P(解説)
パッケージとは、クラス・インターフェイスをグループにまとめるものである。

package パッケージ名;
という形で宣言する。

パッケージは階層構造と取ることができ、
Aの下位にあるBと言うパッケージにクラスを配置する場合
package A.B;
このように宣言する。
Category: SCJ-P(解説)
java プログラム(ソースファイル)は、
1.パッケージ宣言
2.インポート宣言
3.クラス・インタフェースの定義
という単位に分けられ、この順番に書く必要がある。

パッケージ宣言を省略すると、デフォルトパッケージというパッケージ属することになる。

インポート宣言は必要な場合のみ記述する。
クラス内でパッケージ.クラスという記述することでインポート宣言はしなくても良い。
逆に、インポート宣言をすることで、クラス名のみで表現することが出来る。

IApplicationを継承したクラスの
start()が呼び出される。
そのスタートの中でDisplay.setCurrentでCanvasやらPanelやらをセットする。

が流行(?)のやり方なのかな。
public class Aa extends IApplication{
public void start() {
Canvas c = new Canvas();
Display.setCurrent(c);
}
}

こんな感じ。
後はCanvasのところをCanvasを継承した自作のクラスに変えて
そのCanvasを継承した自作のクラスの
paintの中身書いたりイベントリスナーらへんを書いたり

で動かせて表示できる。
Eclipse3系でも使えるらしい。
3.1.1でも使えた。
どうした−1
RequestしてもResponseが返ってこない。
HttpClient client = new HttpClient(new MultiThreadedHttpConnectionManager());
マルチスレッドで使用するとしている。

原因−1
以前のconnectionをリリースしてないことが原因らしい。
マルチスレッドなはずなのに、2〜3本のコネクションでリクエストが帰ってこなくなる。
  1. Javaプログラム
    • プログラムの構造
    • パッケージ宣言
    • インポート宣言
    • クラスの定義
  2. キーワードと識別子
    • Javaで予約されているキーワード
    • 識別子
  3. 基本データ型(プリミティブ型)
    • 変数の型
    • 基本データ型
  4. 修飾子
    • 修飾子
    • クラス修飾子
    • インターフェース修飾子
    • フィールド修飾子
    • メソッド修飾子
    • コンストラクタ修飾子
    • 中カッコでカこまれたコードに付けられる修飾子
  5. アクセス制御
    • アクセス修飾子
    • public
    • デフォルト
    • protected
    • private
  6. アプリケーションとアプレット
    • アプリケーション
    • アプレット