・   「Java入門編」 第12回

12:データ構造としてのクラス(2)

クラスのコンストラクタの意味と、その定義について練習します。


・ 準備:

  1. LinuxもしくはWindowdsの環境でログインしなさい。
  2. 作業のための端末エミュレータのウィンドウを開きなさい。
  3. ホームディレクトリの下に後期のJavaの作業用のディレクトリ java2 に移動し、以下の課題の作業を行いなさい。

・ 準備:

  1. LinuxもしくはWindowdsの環境でログインしなさい。
  2. 作業のための端末エミュレータのウィンドウを開きなさい。
  3. ホームディレクトリの下に後期のJavaの作業用のディレクトリ java2 に移動し、以下の課題の作業を行いなさい。
  4. 前回の課題 が途中の人は、先にそちらを完成させなさい。

・ 基本課題1:「コンストラクタの定義の追加」

  1. コンストラクタの定義を追加したソースファイル Elephant.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. この課題はこのままでは実行できません。次の課題に進みなさい。

・ 基本課題2:「定義したクラスの利用(1)」
Elephantのインスタンスの配列の用意とその内容を表示する処理を行います。

  1. ソースファイル ElephantAdmin.javaのうち、 処理の対象となるElephantの配列のデータの用意、 メソッド printElephants() とそのmain()からの呼び出し部分を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. 実行して結果を確認しなさい。

・ 基本課題3:「定義したクラスの利用(2)」
Elephantのインスタンスの内部のデータ(体重)を処理することを考えてみましょう。

  1. ソースファイル ElephantAdmin.javaのうち、 体重の総計を計算するメソッド totalWeight() と そのmain()からの呼び出し部分を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. 実行して結果を確認しなさい。

・ 基本課題4:「定義したクラスの利用(3)」
Elephantのインスタンスの内部のデータ(年齢)を処理することを考えてみましょう。

  1. ソースファイル ElephantAdmin.javaのうち、 年齢の平均を計算するメソッド averageAge() と そのmain()からの呼び出し部分を作成しなさい。 このメソッドの返り値は小数点以下の値も計算するために float型とします。
  2. javac コマンドでコンパイルをしなさい。
  3. 実行して結果を確認しなさい。

・ 基本課題5:「定義したクラスの利用(4)」
Elephantのインスタンスの内部のデータ(体重、年齢)を処理し、 結果を Elephantのインスタンスとして返すようにします。

  1. ソースファイル ElephantAdmin.javaのうち、 最も体重の重い象を返すメソッド heavyElephant() と 最も年齢の若い象を返すメソッド youngElephant() 、 それらのmain()からの呼び出し部分を作成しなさい。 これらのメソッドの返り値はいずれも Elephant のインスタンスとします。
  2. javac コマンドでコンパイルをしなさい。
  3. 実行して結果を確認しなさい。

・ メールによるレポート課題: 以下の結果を tatsuo宛のメール で知らせてください。 件名(Subject)は java24

  1. 学籍番号と氏名
  2. 課題5 のプログラム ElephantAdmin.java の完成版を添付しなさい。

・ 応用課題:「与えられたインスタンスの配列の並び替え」
Elephantのインスタンスを年齢順に並び替え(sort)処理することを考えてみましょう。

  1. ソースファイル ElephantAdmin.javaのうち、 与えられた Elephantの配列の各インスタンスの年齢を調べ、 年齢の高い順に並び替えるメソッド sortElephantsByAge() と そのmain()からの呼び出し部分を作成しなさい。 このメソッドは与えられた配列を直接並び替えることにします。 したがって返り値は必要なく、型は voidです。
  2. javac コマンドでコンパイルをしなさい。
  3. 実行して結果を確認しなさい。

実習の目次   今週の講義の内容