1日30分英語

習慣化するために

P143-221 スレッド パッケージ

スレッド

作る方法

  • Threadクラス
    • Threadクラスの拡張クラスを作る
    • runメソッド宣言
    • そのクラスのインスタンスを作る
    • startメソッド呼び出し
  • Runnableインターフェース
    • Runnableインターフェースを持つクラスを作る
    • runメソッド実装
    • Thread th = new Thread(作ったクラスのインスタンス);
    • th.start();

排他制御

  • synchronized
    • synchronizedメソッド
    • synchronizedブロック
    • インスタンスかクラスかをロックできる
  • 外からスレッドを終了する
    • run(){}の中に終了する条件を埋め込んでおく
  • スレッドを待たせる
    • Thread.sleep();
      • InterrruptedException
  • スレッドの終了を待つ
    • th.join();
  • スレッド同士で同期を取る
    • waitとnotify
      • waitはそのスレッドが持っているオブジェクトのロックをいったん外す
      • notifyAllしたスレッドがそのオブジェクトのをロックを解放した後で他のスレッドが動く
  • プライオリティ

匿名クラスでインスタンス生成

Runnable r = new Runnable(){
   @Override
   Public void run(){
      //......
   }
};
r.start();

パッケージとアクセス制御

パッケージ

  • パッケージとサブパッケージの関係性はない
  • クラス階層と無関係

アクセス制御

  • private
    • 自分のクラスだけ
  • なし
    • 自分のパッケージにだけ
  • protected
    • 自分のパッケージとサブクラスに
  • public
    • みんなに

スタティックなインポート宣言

  • import static java.lang.System.out で、 out.println();と書ける

次は「Java言語プログラミングレッスン 第3版 下」です。
と言っても上巻とP143まで既に読んでたんで続きから。
Javaは仕事で触ってはいるんですが、ほとんど勉強していないのでちゃんと読もうと言うことで。
しかし本文中の練習問題を解かないと実力が付かない気がしますね。
解いていないのですよね。。とりあえず全部読んで、どこかで1日解く日を作ろうと思います。

Java言語プログラミングレッスン 第3版(下)

Java言語プログラミングレッスン 第3版(下)