java 言語の基礎知識 - kun shan...

20
11 Java プログラミング入門 2Java 言語の基礎知識 この章のポイント Java 言語の特徴や実行および開発環境の種類について学 びます。 次に、JDK を用いた初歩の Java プログラミングを、実習を 通じて習得します。 Java の特徴 Java の実行環境と実行形態 Java の開発環境 JDK での Java プログラミング Java プログラムの構成要素 Java の機能と関連技術

Upload: others

Post on 31-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

11

Java プログラミング入門

第2章

Java言語の基礎知識

この章のポイント

Java 言語の特徴や実行および開発環境の種類について学

びます。

次に、JDK を用いた初歩の Java プログラミングを、実習を

通じて習得します。

・ Java の特徴

・ Java の実行環境と実行形態

・ Java の開発環境

・ JDK での Java プログラミング

・ Java プログラムの構成要素

・ Java の機能と関連技術

12

第 2章 Java 言語の基礎知識

2.1. Javaの特徴

Java 言語は、サン・マイクロシステムズ(Sun Microsystems)社(現在はオラクル(oracle)

社)が開発したプログラミング言語です。

Java 言語は、1995 年に初めて一般に公開されました。従来のプログラミング言語の欠点を克

服しつつ新しい機能を取り入れ、洗練された実装であったため、高い評価を受けました。現在では、

組み込み機器からインターネット上の大規模システムまで広い分野で使われています。

分かりやすい文法なので、プログラミング学習に向いており、基本情報技術者試験などの資格試

験の言語としても採用されています。Java 言語の主な特徴は、次の通りです。

(1) プラットフォーム非依存

Java 言語は、ソースコードの修正や再コンパイルをしなくても、様々なプラットフォーム(OS

等の環境のこと)で動作可能です。

この機能を実現するために、Java 言語では、コンパイラだけでなく、実行ソフトも提供されて

います。この実行ソフトを Java 仮想マシン(JVM: Java Virtual Machine)と呼び、プラ

ットフォームごとに用意しておくことで、ハードウェア等の違いを吸収し、プログラムの互換性を大

幅に向上させています。

現在 Java が動作させられる環境は、PC、組み込み機器(携帯電話、スマートフォン、PDA、

ブルーレイプレーヤー)、Web ブラウザ、Web サーバなど多くあります

(2) オブジェクト指向プログラミング言語

Java は、「オブジェクト指向プログラミング(OOP:object-oriented programming)」

技法に基づいて設計されたプログラミング言語です。

オブジェクト指向とは、「カプセル化」・「継承」・「ポリモ-フィズム」という概念を用いて、プログ

ラムの開発効率、保守性を高める考え方です。現在のソフトウェア開発では、必須となる重要な

技法です。

(3) 充実したライブラリ

演算・文字処理・入出力だけでなく、描画やネットワークなど現在のソフトウェア開発で必要と

される多くの機能が標準で用意されています。

(この機能は、Java の開発者が書いた膨大な数のプログラムで提供されています。このように

再利用可能なコードの集まりを「ライブラリ」または「API(application programming

interface)」と呼びます)

(4) 高い安全性

メモリ管理機能やエラー処理機能がしっかりと実装されているため、高セキュリティのプログラ

ミングがしやすくなっています。さらにプログラム実行時には、JVM がコードの安全性を確認しな

がら実行します。

(5) オープンソース

Java は、オープンソースなので誰でも Java 言語自体のソースコードを読むことができます。

また、標準の開発環境は無料で提供されているので、自宅の PC などにインストールして気軽に

プログラミングできます。

13

Java プログラミング入門

2.2. Javaの実行環境と実行形態

Java プログラムを実際に実行するには、JVM とライブラリがセットになった Java 実行環境

(JRE : Java Runtime Environment)が必要です。Java プログラムは、JRE があれば、

様々なプラットフォームで実行できます。

Java プログラムの実行形式を、「バイトコード(クラスファイル)」と呼びます。このファイルを置く

場所や実行のさせ方によって、実行形態が 3 種類に分別されます。

(1) Java アプリケーション

バイトコードをローカルのコンピュータ上に置き、同じコンピュータ上で実行します。OS 上の

アプリケーションソフトとして動作します。

携帯電話のアプリは、この実行形態で動作しています。

(2) Java アプレット

バイトコードを Web サーバ上に置き、利用者が使うコンピュータ側へバイトコードを転送して

から、Web ブラウザ上で実行します。Web ブラウザの一部として動作するので、Java アプリケ

ーションと比べると、機能に制限があります。

Web ページの表現能力を大幅に向上できるため、一時期よく使われていましたが、 近で

は、Flash に押されて、あまり使われなくなっています。

(3) Java サーブレット / JSP

バイトコードを Web サーバ上に置き、実行します。指示と処理結果だけを、利用者が使うコ

ンピュータの Web ブラウザとの間でやりとりします。

他のサーバーサイド技術と比べて、高機能・低負荷なので、大規模なショッピングサイトやネ

ットバンキングなどでの採用例が多くあります。

利用者

バイトコード

利用者

バイトコード

① Web ページ閲覧

② ファイル転送 ③ Web ブラウザ上で実行

バイトコード

利用者

バイトコード

① Web ページ閲覧

③ 処理結果のみ転送

② Web サーバ上で実行

14

第 2章 Java 言語の基礎知識

2.3. Javaの開発環境

(1) JDK

Java プログラムの開発には、JDK (Java Development Kit)が必須です。

JDK には、JRE に加えて、コンパイラなど開発に必要な様々なソフトウェアが含まれています。

JDK には用途別に 3 種類のエディションが用意されています。

Java SE(Standard Edition) 標準開発向け

Java ME,EE を使う場合にも必須

Java ME(Micro Edition) 組み込みシステム(携帯電話など)開発向け

Java EE(Enterprise Edition) 大規模システム(サーバなど)開発向け

JDK は数年に一度、大規模な言語仕様の見直しが行われ、バージョン番号が上がります。

履歴は次の通りですが、名称や番号表記がよく変更になるので注意が必要です。

JDK 1.0 → JDK 1.1 → J2SE 1.2 → J2SE 1.3 → J2SE 1.4 → J2SE 5.0 →

Java SE 6 → Java SE 7(2011 年リリース予定)

JDK は、Java の開発元から無償で提供されており、インターネット上で手に入れることができ

ます。しかし、Java に関係する必要 小限のものしか含まれていないので、ソースコードを記述

するテキストエディタなどは、別に用意しないといけません。

(2) 統合開発環境(IDE)

ソフトウェアの開発には複数の作業が必要になります。これらをバラバラに扱っていると効率が

悪いので、一つのウィンドウ上でまとめて作業できるソフトウェアがつくられています。このようなソフ

トウェアを、統合開発環境(IDE: Integrated Development Environment)と呼びます。

Java 対応 IDE は何種類もありますが、現在よく使われているのは次の 2 つです。

・ Eclipse ・・・ IBM が無償で一般公開した IDE。完成度が高く、プラグインで機能追加可能。

・ NetBeans ・・・ Sun が無償で配布している IDE。JDK と一緒に配布されているものもある。

Java の IDE に共通しているのは、コンパイルや実行をするとき、内部では JDK が必ず呼び

出されている点です。IDE の配布パッケージには JDK があらかじめ組み込まれているか、別に

JDK をインストールする必要がある場合があります。

プログラム開発者、IDE、JDK の関係は下図のようになります。

プログラム開発者

JDK を直接使う場合

IDE を使う場合

(IDE が JDK の各ソフトウェアを呼び出す)

IDE

JDK

15

Java プログラミング入門

2.4. JDKでの Javaプログラミング

2.4.1. Java プログラミングの流れ

ここでは、Java アプリケーションを、JDK を直接使って開発する方法を説明します。

(1) 使用するソフト

テキストエディタ

ソースコードの記述に使う。

メモ帳などの文字のみを編集できるソフトウェア

(ワードプロセッサを使ってはいけない)

javac コンパイルに使う。 コマンドプロンプト上で呼び出す。

Java のコンパイラ

java 実行に使う。 コマンドプロンプト上で呼び出す。

Java アプリケーション実行用の JVM(インタプリタ)

(2) 全体の流れ

この操作説明において、利用する PC の環境で異なる場合があります。実習では、実際の環境に

合わせた操作を行って下さい。

① テキストエディタの起動

④ コンパイル

実行失敗や修正したい場合

・・・ ソースコード記述用に必要

③ ソースコードの記述と保存

② コマンドプロンプトの起動

作業終了

⑤ 実行

成功

・・・ コンパイル・実行用に必要

ソースコード

~.java

バイトコード

~.class

失敗

・・・ テキストエディタでソースコードを記述して、 ~.java というファイル名で保存する

・・・ javac で、ソースコードをコンパイルする 成功すると、バイトコードが作られる

実行が成功して、動作テストを完了した場合

・・・ java で、バイトコードを実行する

作業開始

・・・ 拡張子が.class なので、 クラスファイルと呼ぶ

・・・ ソースコードを保存したファイルを、 ソースファイルと呼ぶ

16

第 2章 Java 言語の基礎知識

① テキストエディタの起動

[スタート]ボタンの[プログラム]から、「TeraPad」をクリックして下さい。

このウィンドウで、ソースコードの入力と編集を行います。

作業がすべて完了するまで、このウィンドウは開いたままにしておいて下さい。

② コマンドプロンプトの起動

[スタート]ボタン-[プログラム]から、[JDK]を探してクリックして下さい。

(このメニュー項目があるのは東海大学湘南キャンパスだけです。ふつうは[スタート]ボタンの[ア

クセサリ]-[コマンドプロンプト]をクリックします)

これで「コマンドプロンプト」と呼ばれるソフトが起動します。

この黒いウィンドウで、コンパイルと実行を行います。

操作はキーボードだけで行います。マウスは使いません。

作業がすべて完了するまで、このウィンドウは開いたままにしておいて下さい。

メモ

コマンドプロンプトの中で、左

側に表示されている文字を、

「プロンプト」と呼びます。

現在、作業しているドライブや

フォルダ位置を表示していま

す。ここで¥は区切り記号とし

て使われています。

利用者は、>の右側にコマンド

をキー入力して操作します。

17

Java プログラミング入門

開いたコマンドプロンプトで作業するフォルダへ移動します。フォルダの移動命令をキー入力します。

例えば、Z ドライブの java フォルダへ移動したい場合は、

z: ⏎

cd␣java ⏎

と入力すれば移動できます。

◆補足:コマンドプロンプトの基本的な使い方

コマンドプロンプトは、文字だけでコンピュータを操作したい時に使うソフトウェアです。

コマンドプロンプトでは、コマンドを打ってから最後に Enter キーを押すことで、その命令が実

行されます。一度キー入力したコマンドは、上矢印キー↑と、下矢印キー↓で再び呼び出すこと

ができます。

(1) ドライブの移動 別のドライブへ移動するには、アルファベットに続けてコロン:を入力します。

ドライブ番号: ⏎

(2) フォルダの移動

別のフォルダへ移動するには、cd コマンドを使います。

cd␣フォルダ名 ⏎

上のフォルダへ戻りたい場合は、フォルダ名のかわりにピリオドを2つ連続で入力します。

cd␣.. ⏎

(3) ファイルの一覧表示

現在のフォルダの中にあるファイルの一覧を表示するには、dir コマンドを使います。

dir ⏎

表示される一覧が多すぎて見づらい場合は、任意も文字列を示す記号*を使って、一部のファ

イルだけを表示されられます。例えば、

dir Ex* ⏎

とすると、先頭が Ex で始まるファイル名の一覧だけが表示され、

dir *.java ⏎

とすると、末尾が.java で終わるファイル名の一覧だけが表示されます。

(4) 画面の消去

プロンプト以外の文字を一度クリアしたい場合は、 cls ⏎

(5) コマンド一覧の表示

コマンドプロント内で使用できるコマンド一覧の表示は、 help ⏎

メモ

コマンドプロントから良く操作

するフォルダ名は、入力ミスを

防ぐために、英数字で付ける

ことをおすすめします。

メモ

文中の、

␣ は半角スペース

⏎ は Enter キー

の入力を意味する。

18

第 2章 Java 言語の基礎知識

③ ソースコードの記述と保存

手順①で開いたテキストエディタで、ソースコードを入力します。

01

02

03

04

05

06

07

08

09

// こんにちはプログラム

public class Hello

{

public static void main(String[] args)

{

System.out.println("Hello, World!");

System.out.println("こんにちは、Java");

}

}

入力し終わったら、[ファイル]メニューの[名前を付けて保存]で、作業フォルダへ移動してから、

Hello.java という名前で保存して下さい(一文字目は必ず大文字にすること。今回の場合は h

ではなく H とする)。

コマンドプロンプトで、ソースファイルが作業フォルダの中にあるかを確認します。

dir ⏎

と入力して下さい。表示されたリストに、Hello.java があれば OK です。

リストにソースファイルが無い場合は、正しいフォルダへ移動するか、TeraPad のウィンドウに切り替

えて正しい場所に保存し直して下さい。

メモ

TeraPad の画面で[EOF]と

いう青い文字が表示されてい

るが、これはファイル末尾

(EOF: End Of File)を

示すもので、削除をすることが

できない。

とくに問題はないので、気にし

ないこと。

メモ

命令や記号は、英数字モード

で入力すること。

日本語入力モードを使って良

いのは、メッセージやコメントな

ど一部に限られる。

19

Java プログラミング入門

④ コンパイル

コンパイル命令は、コマンドプロンプトに次の書式で入力します。

javac␣ソースファイル名 ⏎

今回は、

javac␣Hello.java ⏎

と入力して下さい。Hello.java がコンパイルされます。

成功した場合

メッセージは表示されません。

コンパイルが成功して、バイトコード(クラスファイル)ができたかを確認するために、

dir ⏎

と入力して下さい。ファイルのリストが表示されます。

表示されたリストに、Hello.class があれば OK です。

手順⑤へ進んで下さい。

間違いがある場合

クラスファイルは作成されません。

エラーメッセージが表示され、間違いの内容と場所(行番号)が示されます。

テキストエディタで間違いを直して、上書き保存してから、もう一度コンパイルして下さい。

⑤ 実行

Java アプリケーションの実行命令は、コマンドプロンプトに次の書式で入力します。

java␣クラスファイル名 ⏎

ここで、クラスファイル名には、.class を付けないことに注意して下さい。

今回は、

java␣Hello ⏎

と入力して下さい。Hello.class が実行されます。

下図のように、メッセージが表示されれば、成功です。

20

第 2章 Java 言語の基礎知識

2.4.2. 間違いの修正

プログラムのエラーや欠陥を、「バグ(bug)」と呼びます。このバグを探し出して、修正する作業

を「デバッグ(debug)」と呼びます。

バグが発生してしまうのは避けられません。すばやく原因を見つけて適切な修正を行うことが重

要です。

プログラムのエラーを大まかに分類すると、

・文法エラー ・・・ 主に人間の入力ミスによるもの。

・構文上のエラー ・・・ ある箇所の文法エラーが原因となって、他の場所のエラーを引き起こ

しているもの。

・実行時のエラー ・・・ 文法上は問題無いが、実際に動かしてみると出てくるエラー。

の三種類があります。

(1) コンパイル時のエラーと直しかた

javac でコンパイルして間違いがあると、コマンドプロンプトに下図のようなメッセージが出ます。

メッセージには間違えた場所と内容が書いてあります。

このエラーメッセージで、

「Hello.java の 6 行目で、行末に;がない」

ということが分かります。

このメッセージをヒントにして、テキストエディタで、ソースコードを修正します。

修正完了したならば、[ファイル]メニューの[上書き保存]して、再び javac でコンパイルして、

エラーが出なくなるかを確認します。

このように、エラーメッセージはデバッグするために大切な情報です。エラーが出てもいやがらず

に読んで下さい。

また、エラーが複数出た場合は、上から順番に修正して下さい。下の方のエラーは、上のエラー

に影響されて出てしまっている場合が多いからです。

ソースファイル名 行番号 エラーの内容

行内でのエラー位置が ^ で示される

書き忘れた;を追加

21

Java プログラミング入門

(2) 探しにくい間違い

コンパイル時のエラーで、よくあるが探しにくい間違いのパターンを見てみましょう。

① 不正な場所の全角文字

全角文字(漢字やひらがな等)は、値とコメント以外の所では使ってはいけません。

誤って使うと、次のエラーのように「不正な文字」として扱われます。

(¥に続く数字は異なることがあります)

これは、ソースコードを見るだけでは、探すのが難しいエラーです。

特に空白文字(スペース)の存在は見るだけでは、分からないので、矢印キーを動かして

カーソルの飛び方を見て探し出します。全角文字は幅が広いので区別できます。

② 重要なキーワードや記号を書き忘れた場合

ちょっとした間違いでは、javac の文法チェック機能は、エラーの正確な場所や内容を指摘

してくれるのですが、重要な所で間違えると上手く探し出してくれません。

下図のエラー表示では、4 行目と 9 行目の 2 カ所で間違いが指摘されています。

しかし、ソースコードを見ると、どちらの行にも間違いは無く、5 行目で中カッコを忘れたのが

分かります。

ブロックの始まりである中カッコを書き忘れたために、範囲が分からなくなって javac が混

乱したようです。

この例のように、エラー表示の行番号を見ても間違いが見つからないようならば、その行の

前後に原因があるので確認しましょう。

ここに全角スペースを書いてしまったが、見るだけでは分からない。

ここに中カッコ { を書き忘れてしまった。

22

第 2章 Java 言語の基礎知識

2.4.3. 実行結果の印刷方法

(1) 実行結果の画面コピーを印刷する場合

① 実行結果のウィンドウが一番手前に表示された状態で、

[Alt]キーを押しながら、[Print Screen]キーを押して、画面コピーをとります。

② Word を起動します

③ Word の[編集]メニューの[貼り付け]をクリックします。

すると実行結果ウィンドウの画面コピーが Word に貼り付けられます。

④ Word で大きさ等を調整した後、[ファイル]メニューの[印刷]をクリックすると、[印刷]ウィ

ンドウが開くので、設定を確認してから、[OK]ボタンをクリックして下さい

◆補足:ウィンドウ配色の変更方法

実行結果の表示されるウィンドウは、背景が黒、文字が白なのでそのまま印刷すると、

見づらくなります。プロパティで画面配色を変更してから、印刷することをおすすめします。

メモ

[PrintScreen]キーを使う

画面コピーは様々な時に使え

る便利な技です。

[PrintScreen]

→ 画面全体のコピー

[Alt]+[PrintScreen]

→ 一番手前にある

ウィンドウのコピー

メモ

[Print Screen]キーは、

PC によって[Prt Sc]と表記

される場合や、[Fn]キーと同

時に押す必要がある場合があ

ります

① タイトルバーのアイコンをクリック

② メニューの「プロパティ」をクリック

③ 「画面の色」をクリック 「プロパティ」ウィンドウが表示される

⑤ パレットで変えたい色をクリック

④ 「画面の文字」または

「画面の背景」を選んでから、

⑥ 「OK」ボタンで決定

23

Java プログラミング入門

(2) 実行結果の文字だけをWord にコピーしてから印刷する場合

① 実行結果ウィンドウの左上の角のアイコンをクリックします。

メニューが表示されるので、[編集]-[すべて選択]をクリックします。

すると、文字が白黒反転表示されて選択されます

② 続けて同様に、実行結果ウィンドウの左上の角のアイコンをクリックします。

メニューが表示されるので、[編集]-[コピー]をクリックします。

③ Word を起動します

④ Word の[編集]メニューの[貼り付け]をクリックします。すると実行結果の文字が Word に貼

り付けられます。

⑤ Word で、編集やフォント設定をした後、[ファイル]-[印刷]をクリックすると、[印刷]ウィン

ドウが開くので、設定を確認してから、[OK]ボタンをクリックして下さい

24

第 2章 Java 言語の基礎知識

2.5. Javaプログラムの構成要素

Java プログラムは、設計図に相当する「クラス」で構成されます。

クラスの構成要素を「メンバ」と呼びます。メンバには、属性(データ)をあつかう「フィールド」

と、操作(手続き)をあつかう「メソッド」の 2 種類があります。ソースコード Hello.java で、

Java アプリケーションプログラムの構造を確認してみましょう。

2.5.1. クラス

範囲を持つ要素を「ブロック」と呼び、始まりと終わりで、中カッコ {} を使います。

クラスは、ブロックの先頭でキーワード class とクラス名を記述します。

// こんにちはプログラム

public class Hello

{

public static void main(String[] args)

{

System.out.println("Hello, World!");

System.out.println("こんにちは、Java");

}

}

プログラムの中には、複数のクラスを書くことが出来ます。しかし、class キーワードの前に

public が付いたクラスは、プログラムの中で 1 つだけで、そのクラス名はソースファイル名

(.java を除いた部分)と同じにする必要があります。

2.5.2. メソッド

メソッドもブロックです。メソッド名の右側にあるカッコ( )で呼び出し側からのデータを受け取

ります。これを「引数(ひきすう)」と呼びます。ブロック内での処理結果を「戻り値(もどりち)」と

して呼び出し側へ戻します。

// こんにちはプログラム

public class Hello

{

public static void main(String[] args)

{

System.out.println("Hello, World!");

System.out.println("こんにちは、Java");

}

}

名前が main のメソッドは「main()メソッド」と呼ばれ、Java アプリケーションでは必須で、

プログラム実行時の 初に自動的に呼び出されます。public クラスの中に1つだけ書きます。

クラスの範囲

クラスの始まり

クラスの終わり

クラス名 クラス

public class のクラス名は、ソースファイル名と同じ Hello.java

メソッドの範囲

メソッド名 引数 戻り値のデータ型

メソッドの始まり

メソッドの終わり

25

Java プログラミング入門

ここで、Hello.java におけるブロックの範囲に注目すると、クラスのブロックの中に、

main()メソッドのブロックが入っていることが分かります。

// こんにちはプログラム

public class Hello

{

public static void main(String[] args)

{

System.out.println("Hello, World!");

System.out.println("こんにちは、Java");

}

}

このように、ブロックの中には、別のブロックを入れられます。

注意したいのは、外側のブロックの中に、内側のブロック全体が丸ごと入っていることです。

ブロックの一部分だけを重ねることはできません。

2.5.3. 文

プログラムでの、 小の実行単位は「文」です。文の末尾には、セミコロン ; を付けます。

このセミコロンを付け忘れると、コンパイラが文の区切りを判別できなくなります。

System.out.println("Hello, World!");

複数の文がある場合、処理は上から下へ、一文ずつ進みます。

一行の中に、複数の文がある場合は、左から右へ、一文ずつ進みます。

この処理の進み方を、「順次」と呼びます。

// こんにちはプログラム

public class Hello

{

public static void main(String[] args)

{

System.out.println("Hello, World!");

System.out.println("こんにちは、Java");

}

}

上図の文は、System.out.println()というメソッドを呼び出しています。

このメソッドは、「カッコの中に入れたデータを、画面表示して改行する処理を行う」ものです。

メモ

セミコロン ; と、コロン :

を間違えないようにしましょう。

上から下へ、

一文ずつ進む

外側のブロック

内側のブロック

丸ごとブロックを含むのは、OK 一部分を重ねることはできない

末尾にセミコロンを付ける

26

第 2章 Java 言語の基礎知識

2.5.4. コメント

ソースコード中には、注釈を書くことができます。この注釈を「コメント」と呼びます。

コメントは、コンパイル時に無視されるので、文字で何でも書いておくことができます。

// こんにちはプログラム

public class Hello

{

public static void main(String[] args)

{

System.out.println("Hello, World!");

System.out.println("こんにちは、Java");

}

}

良く使うコメントの書き方は、2 種類あります。

① //を書いた位置から行末まで

Java で も使われるコメント記述方法です。C++、C#でも使えます。

② /* と */ の間に囲まれた部分

この書き方は昔の C 言語から使われており、C++、C#でも使えるコメント記述方法です。

コメントを 2 重にして使う場合は、注意が必要です。

//のコメントは、/*~*/の間で使えます /*~*/を 2 重に使うのはダメです

/*

// コメント

*/

/*

/* コメント */

*/

一時的に、一部の文やブロックを無効にしておきたい時に、コメントを使うことがあります。

これを「コメントアウト」と呼びます。

このように、命令文を削除せずに一時的に無効にできるので、作りかけの行をコメントアウト

しておいたり、エラーの原因を特定するときに利用したり便利に使えます。

// コメント a = 10; // コメント

/* コメント */ /*

コメント1 コメント2

*/

System.out.println(“おはようございます。”); //System.out.println(“こんにちは”); System.out.println(“こんばんは”);

文の後ろ(右側)にも書ける

離れた行に書いて、

複数行をまとめてコメントにできる

コメントを使って、この行だけを

無効にできる。

この行がコメント

27

Java プログラミング入門

2.6. ソースコードを見やすくするための定石

① 改行やスペースを入れる

Java 言語は文末をセミコロンで区切っているので、右側に文を続けて書くことができます。

しかし、これでは見づらく、間違いがあっても直すのが大変です。

次のように適度に「改行」や「スペース」を入れて、見やすくするべきです。

② インデント(字下げ)を行う

ブロックを使うとき、ソースコードを見てすぐに範囲が分かるように、ブロック内の行を数文字分

右にずらすのが普通です。これを「インデント(字下げ)」と呼びます。

2~4 文字分の半角スペースまたは Tab キーを使ってインデントします。

悪い例 良い例

③ コメントを要所に書く

コメントはたくさん書いても実行速度には影響しないので、後でソースコードを見た時に内容が

分かりやすいように、要所に書くことをおすすめします。

a=0;b=0;if(x<=0){a=a+10; b=b-10;}

a=0; b=0;

if(x<=0) {

a=a+10; b=b-10;

}

while(a<100) {

if(b>0) {

a++;

x = a/2;

}

}

while(a<100) {

if(b>0) {

a++;

x = a/2;

}

}

// 合計値計算プログラム

// 東海太郎

int i=1, s=0;

// 合計値計算ループ

while(i<=100) {

s += i; // ここで合計値を計算

i++;

}

System.out.println("合計値は"+s+"です。");

ブロックが分かるようにインデントさせる

ソースコード先頭には、 タイトルや作成者などを書く

忘れそうな式の役割を書いておく

ブロック全体で何をするのかを書く

すべてを左寄せしたため、見づらい

28

第 2章 Java 言語の基礎知識

2.7. Javaの機能と関連技術

Java の機能はとても多く、すべてを一度に理解するのは困難です。テキストや参考書も扱う内容

で様々なものがあります。

Java

基本文法

データ

基本データ型

参照型配列

列挙型

演算

入出力

標準入出力

ファイル入出力

制御構文

分岐

繰り返し

ジャンプ文

クラス

フィールド

メソッド

コンストラクタ

継承

インタフェース

例外処理

スレッド

コレクション・ジェネリックス

アルゴリズム

文字列操作

ソート

サーチ

データ構造

ビット操作

数値計算・解析

デザインパターン

設計・テスト

要求定義

モデリング

ユーザインタフェース

動作テスト

デバッグ

運用・保守

GUI・グラフィックス

AWT

Swing

Java 2D

Java 3D

外部との連携

JDBC

Java RMI

JNDI

JNI

実行形態

アプリケーション

アプレット

サーブレット / JSP

実行環境JRE

JVM

API

プラットフォーム

Java SE

Java ME

Java EE

Java の学習では、ある内容を習得してから、次の段階へ進み、理解の範囲を広げていく方法が

良いでしょう。

STEP 1 基本の習得

基本的な文法・知識を習得し、プログラミング実習を通して作成・デバッグ能力を身に付ける。

STEP 2 アルゴリズムやデザインパターンの習得

アルゴリズム(問題を解くための効率的な手順)やデザインパターン(オブジェクト指向によるソ

フトウェア設計パターン)を習得して、実践的なソフトウェア開発をできるようにする。

STEP 3 関連技術の習得

GUI、ネットワーク、データベース接続などの関連技術を学ぶ。これには Java だけでなく、他

のコンピュータ技術を合わせて学習する必要がある。

「基本の習得」の段階では、Java 以外のプログラミング言語でも次の要素を持っています。

「データ」, 「演算」, 「入出力」, 「制御構文」

このテキストでは、この内容を習得してから、オブジェクト指向の詳細に進むことにします。

29

Java プログラミング入門

◆ 第 2章の練習問題

ソースコード名 Name.java として、自分の氏名を画面表示する Java アプリケーションプログラ

ムを作成しなさい。

30

第 2章 Java 言語の基礎知識

◆ 第 2章の確認問題

<Java 言語の特徴>

(1) Java 言語の特徴を 5 つ挙げなさい

(2) Java 言語の実行ソフトを何と呼ぶか、アルファベット 3 文字で書きなさい

(3) 再利用可能なコードの集まりを何と呼ぶか、二種類の呼び方を書きなさい

<Java の実行環境と実行形態>

(4) Java 実行環境を何と呼ぶか、アルファベット 3 文字で書きなさい

(5) Java プログラムの実行形式を何と呼ぶか書きなさい

(6) Java の実行形態を 3 種類挙げ、それぞれのプログラムの置き場所と実行場所について簡単

に説明しなさい

<Java の開発環境>

(7) Java プログラムの開発で、必須のソフトウェア名を書きなさい

(8) 「(7)の答え」には 3 種類のエディションが用意されている。3 つの名称を書き、それぞれの用

途を書きなさい

(9) 「統合開発環境」の英語略名を書きなさい

<JDK での Java プログラミング>

(10) JDK による Java アプリケーションの開発時に、ソースコードを書くのに使うソフトウェアの名

称を書きなさい

(11) Test.java をコンパイルするコマンドを書きなさい。また、Test.java のことを何と呼ぶか

(12) Test.class を Java アプリケーションとして実行するコマンドを書きなさい。

また、Test.class のことを何と呼ぶか

(13) プログラムのエラーや欠陥を何と呼ぶか書きなさい

(14) 「(13)の答え」を修正する作業を何と呼ぶか書きなさい

<Java プログラムの構成要素>

(15) Java プログラムにおいて、設計図にあたるものは何か書きなさい

(16) 「(15)の答え」の構成要素を何と呼ぶか書きなさい

(17) 「(15)の答え」の構成要素のうち、属性を扱うものの呼び方を書きなさい

(18) 「(15)の答え」の構成要素のうち、操作を扱うものの呼び方を書きなさい

(19) 範囲を持つ要素を何と呼ぶかカタカナで書きなさい

(20) 「(19)の答え」の範囲は、ソースコード中でどのように示すか記号を書きなさい

(21) 「(18)の答え」で、呼び出し側から受け取るデータを何と呼ぶか書きなさい

(22) 「(18)の答え」で、呼び出し側へ戻す結果データを何と呼ぶか書きなさい

(23) public が付く「(15)の答え」の中で、Java アプリケーションで必須の「(18)の答え」を何

と呼ぶか書きなさい

(24) 文の末尾に必ず付ける記号は何か書きなさい

(25) 複数の文が並んでいるとき、実行順序はどうなるか簡単に説明しなさい

(26) 「(25)の答え」のような処理の進み方を何と呼ぶか書きなさい

(27) ソースコード中に書く注釈を何と呼ぶか書きなさい

(28) 「(27)の答え」を 2 種類の書式で書きなさい

(29) 「(27)の答え」を使って、文やブロックを一時的に無効にすることを何と呼ぶか書きなさい

(30) ソースコードを見やすくするために、半角スペースまたは Tab で、行頭を数文字分右側へず

らすことを何と呼ぶか、カタカナで書きなさい