プログラム言語
特徴 †
- Sun Microsystemが開発し,1995年に発表
- どんなプラットフォームでも稼動する
- ネットワークを前提としたアプリケーションやモバイルでも動く
- Once Write, Run Anywhere(一度作ったら,どこでも動く)
- その他
ファイルの種類 †
- 通常
- ソースファイルからコンパイラを使ってコンパイルを行う
- 出来上がったファイルを実行するが,マシンに依存してしまう
- クラスファイル
- Javaでは,ソースファイル(.java)からコンパイルしたら「クラスファイル」にする
- バイトコードで書かれた中間ファイル(.class)
- これを,各マシンのJava仮想マシンで変換するので,どんな環境でも動く
- バグ
- プログラムの間違い
- デバッガによって修正(デバッグ)する
言語の特徴 †
- 従来のプログラミングは「手続き型プログラミング」
- Javaなどは「オブジェクト指向プログラミング」
手続き型言語 †
- C言語など
- 手続きが主役
- まず手続きの内容を示す
- 示した手続きに対して最後にデータを与える
オブジェクト指向言語 †
- Javaなど
- データが主役
- 1つ1つのオブジェクト単位のデータが別々に定義される(クラス)
- データの中に手続きを含む
- メリット
- プログラムが設計しやすい
- 1つ1つの目的を設計し,結果をそのままプログラムに
- 進んだ部品化
- 他人数での開発
- 保守性
- 手続きの詳細は隠して,オブジェクトの扱い方のみを公開すればよい
- オブジェクト内の詳細が変わっても,使う人は意識しない
Java独特のしくみ †
クラス †
- オブジェクトの内容を定義した型
- Javaプログラムは最低でも1つのクラスが存在する必要がある
- 2つの要素(メンバ)
- インスタンス
- クラスを基に形にしたもの
- インスタンスにしてしまえば,クラスの中のメンバやメソッドだけでも使える
- コンストラクタ
- インスタンスを使うときのフィールドの初期値
- インスタンスを生成するときに自動的に呼び出されて実行されるメソッド
- 他にも色々な仕組みがある
継承 †
- 他のクラスをフィールドとメソッドごと自分のクラスに取り込むこと
抽象クラス †
- よく使うフィールドやメソッドだけを書いたクラス
- 同じ事を書かなくてもそのクラスを継承するだけで良くなる
- 処理などの細かい事は定義しないで,他のクラスのスーパークラスになる為だけのクラス
- 特徴
- インスタンスを作ることが出来ない
- 中傷クラスのメソッドは定義し直さなきゃいけない
- バグを防ぐ
インタフェース †
class (クラス名) implements (インタフェース名(複数可)){・・・}
- 継承との違い
- 複数のインタフェースが選択出来る
- 全て抽象メソッドなので,そのクラスで定義し直すから
- 継承だと,抽象メソッド以外の同じ名前のメソッドがあったらどっちか分からない
- インタフェースを継承で作る場合
- 全て抽象メソッドでなければならない
- インタフェースのみで継承でき,複数指定が可能
- ただし,フィールドは抽象ではないので同じ名前はだめ
開発環境 †
- 主にデスクトップで動かすような一般的なプログラムを開発する用
- ビジネス目的でも使用可能
- 信頼性も高く,相互運用性に優れたプログラミングが出来る
- Webサービスもサポート
- 携帯電話等の小型端末で稼動するプログラムを作成する用
統合開発環境IDE*5 †
- プログラム開発に関する一連の作業を視覚的な操作で統合して行える
- 種類
- Eclipse
- Sun Java Studio
- JBuilder
プログラムの種類 †
Javaアプレット †
- 小さなアプリケーション
- HTMLファイル上で指定するとサーバからダウンロードされる
- Webブラウザ上で実行される
- 基本的にファイルの読み書きや実行が制限されている
Javaサーブレット †
- Webサーバ上で稼動するプログラム
- サーブレットの処理結果がWebページとしてクライアントマシンに返される
- 断片的なJavaのコードが埋め込まれたWebページ
- JavaなのでWebサーバのシステムに依存せずに動作する
JavaBeans †
- 統合開発環境などで視覚的に利用できる部品(Beans)として利用する
ショートカット
最新の15件
2012-01-21
2012-01-15
2011-04-03
2011-01-03
2010-03-27
2009-11-01
2008-09-29
2008-09-20
2008-08-17
2008-08-07
- counter: 1568
- today: 1
- yesterday: 0
- online: 3
メニューバー編集
添付ファイル一覧