#navi(Programming_II/15)
*例外 [#c1d60c62]
Javaでは例外が発生した場合,どう処理するかをあらかじめ記述する必要がある.

-Throwable
--←Error
---←LinkageError←VerifyError
---←VirtualMachineError←OutOfMemoryError
--←Exception
---←RuntimeException←ArithmeticException
---←IOException←FileNotFoundException

-スーパークラス←サブクラス

**try catch(例外捕捉) [#pb25f3e1]
例外処理
 try {
    例外が生じる可能性のある処理
 } catch (例外クラス 例外オブジェクト名) {
    例外に対する処理
 } finally {
    例外の有無に関わらず行う処理
 }

DivideByZero1.java

**throws [#kfff4d15]
 メソッド名(パラメータ) throws 例外クラス名{メソッドの内容}

DivideByZero3.java

**例外クラスの作成 [#laa7563d]
例外クラスの作成スタイル
 throw new 例外クラス(  );

EvenTest2.java
*データの入出力 [#f4450c4c]

**キーボードからの入力 [#s8325501]
HelloName.java
#code(java){{
public class HelloName {
    public static void main(String args[]) {
        System.out.println("Hello, " + args[0] + '!');
    }
}
}}

HelloName2.java
#code(java){{
public class HelloName2 {
    public static void main(String args[]) {
        for(int i=0; i< args.length; i++){
            System.out.println("Hello, " + args[i] + '!');
        }
    }
}

}}



ラッパークラスを利用した変換
|型|ラッパークラス|変換方法|h
|byte型|Byte|Byte.parseByte(string)|
|short型|Short|Short.parseShort(string)|
|int型|Integer|Integer.parseInt(string)|
|long型|Long|Long.parseLong(string)|
|float型|Float|Float.parseFloat(string)|
|double型|Double|Double.parseDouble(string)|

 NumericInput1.java


~データの型とスキャンの方法
|型|メソッド|h
|Sting|next()|
|byte|nextByte()|
|short|nextShort()|
|int|nextInt()|
|long|nextLong()|
|float|nextFloat()|
|double|nextDouble()|
|boolean|nextBoolean()|

 NumericInput2.java
**ファイルからの入力 [#eeb2f935]

PrintList.java
#code(java){{
import java.util.Scanner;
import java.io.FileReader;

class PrintList {
    public static void main(String args[])  {
        FileReader fr = null;
                
        try {
            fr = new FileReader(args[0]);
        } catch (Exception e) {
            System.out.println("ファイルが見つかりません。");
            System.exit(0);
        }
                
        Scanner sin = new Scanner(fr);
        while (sin.hasNext()) {
            String s = sin.nextLine();
            System.out.println(s);
        } 
    }
}

}}

次がスキャンできるか調べるメソッド
|型|メソッド|h
|Sting|hasNext()|
|byte|hasNextByte()|
|short|hasNextShort()|
|int|hasNextInt()|
|long|hasNextLong()|
|float|hasNextFloat()|
|double|hasNextDouble()|
|boolean|hasNextBoolean()|
**データ読み込みとストリーム [#i80befdc]

 URLtest.java
**ファイル出力 [#y6bbf7b4]
***FileWriter [#j9d390d8]
 Lister2.java
*マルチスレッド [#fa347576]

**シングルスレッド [#u9ff3b75]
スレッドのコントロールはThreadクラスを用いる
 SingleThread.java
 SingleTheadTest.java
**マルチスレッド [#t0d47b40]
 MultiThread.java
 MultiThradTest.java
**Threadクラスの継承 [#d838755b]
Theadクラスの継承

 修飾子 class クラス名  extends Thread {
      クラスの内容
      public void run() {
           各スレッドが行う処理
     }
      クラスの内容
 ]

スレッドを開始するための書式
 クラス名.start();

 MultiThread2.java
 MultiThradTest2.java
**Runnableインターフェースの実装 [#o2e462fd]
 修飾子 class クラス名 impliments Runnable {
       クラスの内容
       public void run() {
              各スレッドが行う処理
       }
       クラスの内容
 }

スレッドインスタンスを生成するための書式
 クラス名 オブジェクト変数名 = new インスタンス名( );
 Thread Threadオブジェクト変数名 = new Thread(オブジェクト変数名);
例:
 MultiThreadExample t = new MultiThreadExample();
 Thread tt = new Thread(t);

 MultiThread3.java
 MultiThreadTest3.java

#navi(Programming_II/15)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS