☆特徴
CPUの種類やOSに依存しない
C言語ではソースをいきなり実行可能な形式にコンパイルしますが、
JAVA言語では中間形式ファイル(*.class)にコンパイルします
この中間形式で配布されるので機種等に依存しません
オブジェクト指向 & シンプル
JAVA言語はC++の機能を引き継いでオブジェクト指向言語です
さらに複雑になり過ぎたC++の機能を整理したのでシンプルな構成です
このような特徴から"C+-"などと言われることもあります
オブジェクト指向言語の入門に向いています
マルチスレッド
今までの言語のように逐次処理でなく、スレッドを利用して複数のプログラムを
並列に走らすことができます
高いセキュリティ
プログラムを実行するときに、バイトコードを厳密にチェックしながら実行します
これによってメモリ等に対する不正なアクセスを防げます
ポインタ演算子がない
'C'〜'C++'の特徴であったポインタ演算子がありません
Cに慣れてきた人には作り難いと感じるかもしれませんが
予期しないメモリアクセスのバグを防ぐこともできます
ガーベッジ・コレクション
'C'や'C++'ではメモリ上に確保した領域は、必要なくなったらfree,delete等の
関数で自分で解放する必要がありました
ところが、JAVAでは必要でなくなった時点で自動的に解放してくれます
これによって、不必要にメモリを消費することが防げます
言語 |
メモリの獲得 |
メモリの解放 |
C、C++ |
malloc |
free |
C++ |
new |
delete |
JAVA |
new |
自動 |
JAVAへ戻る
トップへ戻る