建つ士

JAVAでの3次元構造解析を目指して勉強中です。

コマンドラインとmain()メソッド       

2005-10-20 21:50:09 | Weblog
20.Javaアプリケーションには、次のように宣言されたmain( )メソッドが必要である。

   public static void main( String[ ] args )

21.args配列には、コマンドライン引数が格納される。
  コマンドライン引数が1つもない場合も、
  この配列は常に作成される。


   クラスとコンストラクタ      

2005-10-20 21:37:07 | Weblog
22.コンストラクタは、メソッドに似ているが、
  戻り値はない。
  コンストラクタの名前は、
  クラス名と同じである。
23.クラスには、パラメータリストさえ違っていれば、
  コンストラクタがいくつあってもよい。
24.コンストラクタから同じクラスの別のコンストラクタを呼び出すことができるが、  
  この呼び出しは最初のステートメントで実行しなければならない。
25.コンストラクタが宣言されていない場合、
  コンパイラにより、
  引数を取らないスーパークラスのコンストラクタを起動するコンストラクタが自動的に提供される。
26.スーパークラスのメソッドを呼び出すには、
  superキーワードを使う。

識別子

2005-10-20 21:24:35 | Weblog
27.Javaの名前の1文字目に使えるアルファベット以外の文字は、
  $と_(アンダスコア)である。
  コンパイラは、
  数字ではじまる文字列を数値に変換しようと試みる。

変数

2005-10-19 22:15:11 | Weblog
28.メンバ変数に関しては、
  オブジェクト生成時にJava仮想マシン(JVM)が初期化するが、
  ローカル変数に関しては、
  JVMは初期化をしないので明示的に初期化する必要がある。
  メンバ変数の初期値は次のとおりである。
      型         初期値                   
       byte型          0
      short型          0
          int型          0 
        long型          0
    flout型          0.0f
     double型           0.0d
        char型            'u0000'
    参照型           null

修飾子キーワード

2005-10-19 22:06:47 | Weblog
29.クラスとクラスメンバ(変数、メソッド、インナークラス)
  のアクセスを制御するJavaキーワードは、
  次のとおりである。
  ●public
   プログラムのどこからでも、
   このクラスまたはクラスメンバにアクセスできる。
  ●protected
   同じパッケージまたはサブクラスのメソッドだけが、
   protectedのクラスメンバにアクセスできる。
   このキーワードは、
   クラスを修飾する目的には使えない。
  ●private
   同じクラスのメソッドだけが、
   privateのメンバにアクセスできる。
   このキーワードは、
   クラスを修飾する目的には使えない。
  ●(修飾子なし)
   アクセス修飾子を指定しないクラスまたはメンバには、
   同じパッケージのクラスからしかアクセスできない。
   この設定は、
   デフォルトのアクセス修飾子とも呼ばれる。
30.abstractキーワードは、
  戻り値とシグニチャがあるだけでコード本体のないメソッドを宣言するときに使う。
  abstractメソッドを持つクラスも、
  abstractを使って宣言しなければならない。
  インタフェースは常にabstractだが、
  宣言からabstractキーワードを省くことができる。
  abstractキーワードを使って変数を宣言することはできない。
31.finalキーワードは、
  オーバーライドできないメソッドや、
  初期値を変更できない変数を作成するときに使う。
  メソッド内で宣言されたインナークラスで使われるローカル変数やメソッドパラメータは、
  finalキーワードを使って宣言しなければならない。
32.staticキーワードは、
  特定のインスタンスではなくクラス全体に属するメソッド、
  変数、ネストクラスを宣言するときに使う。
  static変数を初期化するため、
  メソッドの外側にあるコードブロックをstaticキーワードで宣言できる。

ガベージコレクション

2005-10-18 22:28:30 | Weblog
33.System.gc( )メソッドまたはRuntime.getRuntime( ).gc( )メソッドを呼び出すと、
  ガベージコレクションのスレッドが起動されるが、
  Java言語仕様書では、
  この動作が実行されることは保証されていない。

パッケージ

2005-10-18 22:25:42 | Weblog
34.packageステートメントを使う場合は、
  ファイル内の1行目(コメント行は除く)に記述しなければならない。
35.java.langパッケージをインポートする必要はない。
  しかし、それ以外のパッケージを使う場合は、
  importステートメントを使ってパッケージを指定するか、
  そのパッケージのクラスを使うコードのすべての箇所でクラス名を完全修飾名で記述しなければならない。
  importステートメントでアスタリスク記号(*)を使うと、
  パッケージ内のすべてのクラスをインポートできる。
  特定のクラスをインポートする場合は、
  importステートメントにそのクラス名を指定する。
  ● import java.util.*;
  または
  ● import java.util.Hashtable;
36.1つのソースコードファイルには、
  publicキーワードで宣言されたクラスを1つしか定義できない。
  publicクラスを定義したソースファイルの名前は、
  クラス名と同じでなければならない。
  Javaの名前では、
  常に小文字と大文字は区別される。

インナークラス

2005-10-18 22:21:40 | Weblog
37.通常のJavaクラスの中に別のクラスをメンバとして宣言できる。
  メンバクラスを外側のクラスと同じ名前にすることはできない。
  staticを使って宣言したメンバクラスは、
  ネストクラスと呼ばれ、
  staticメソッドとstatic変数にしかアクセスできない。
  インナークラスには、
  名前のあるものと匿名のものがある。
  インナークラスの主な用途は、
  イベント処理である。

例外とエラー

2005-10-18 22:12:33 | Weblog
38.ExceptionクラスとErrorクラスは、
  java.lang.Throwableクラスから派生する。
  多くのメソッドは、
  例外を生成する可能性があると宣言されている。
  例外を受け取る必要があるかどうかは、
  その種類次第である。
  RuntimeExceptionクラスから派生した例外は、
  チェックされない例外と呼ばれ、
  宣言されたり、
  受け取ったりする必要はない。
39.try、catch、finallyは、
  例外を扱うステートメントである。
  tryステートメントのコードで生成された例外は、
  それに対応するcatchで受け取られる。
  tryステートメントの動作とは関係なく、
  finallyステートメントのコードは常に実行される。
40.メソッドで生成される可能性がある例外を宣言するには、
  throwsキーワードを使う。
  一方、
  throwsキーワードは、
  実際に例外を生成するステートメントで使うキーワードである。
41.例外を生成するメソッドをオーバーライドする場合、
  元のメソッドよりも汎用的な新しいメソッドで宣言することはできない。

スレッド

2005-10-18 22:06:09 | Weblog
42.スレッドの作成方法には、
  次の2つがある。
  ●Threadクラスのサブクラスを定義する方法
  ●Runnableインタフェースを実装する方法
43.スレッドを起動するにはstart( )メソッドを呼び出す。