[ Java練習問題 ] 練習問題 第10回 『クラス』

目次

クラス

Java練習問題 第10回では「クラス」についての問題を用意してあります。
「クラス」の解説はこちら

問題 1 難易度 ★★

サンプルプログラムに以下の①~②の手順を追加し、占いプログラムを完成させてください。
① main メソッドの中でFortuneTeller(定義済みの占い師クラス)インスタンスを生成してください。
② FortuneTeller インスタンスの forecast メソッドを呼び出してください。

public class Main_0601 {
  public static void main(String[] args) {
    // ここに解答を記述してください。
  }
}

class FortuneTeller {
  // 占いを行うメソッド
  void forecast() {
    String[] resAry = { "大吉", "", "" };
    int n = new java.util.Random().nextInt(resAry.length);
    System.out.println("あなたの運勢は「" + resAry[n] + "」です。");
  }
}

実行例

あなたの運勢は「吉」です。

問題 1 解答

正解は、、、
public class Main_0601 {
  public static void main(String[] args) {
      FortuneTeller ft = new FortuneTeller();
      ft.forecast();
    }
  }
  //占い師クラス
  class FortuneTeller {
  // 占いを行うメソッド
  void forecast() {
    String[] resAry = { "大吉", "", "" };
    int n = new java.util.Random().nextInt(resAry.length);
    System.out.println("あなたの運勢は「" + resAry[n] + "」です。");
  }
}

問題 2 難易度 ★★★

以下の手順に従ってプログラムを作成してください。
① Car クラスを定義してください。
② 作成した Car クラスにdrive()メソッドを定義してください。
③ drive()は呼び出されると「車は走り始めました」と出力するように定義してください。
④ main メソッド内で Car クラスのインスタンスを生成し、drive()メソッドを呼び出してください。

実行例

車は走り始めました

問題 2 解答

正解は、、、
public class Main_0602 {
  public static void main(String[] args) {
    Car car = new Car();
    car.drive();
  }
}
class Car {
  public void drive() {
    System.out.println("車は走り始めました");
  }
}

問題 3 難易度 ★★★

以下の手順に従ってプログラムを作成してください。
① 四角形を表す Square クラスを定義して下さい。
② Square クラスに、高さを表す height フィールド、幅を表す width フィールド、面積を返す getArea()メソッドを定義して下さい。
③ Square クラスに、辺の数「4」を表す定数フィールドを定義して下さい。
④ Square クラスに、四角形の大きさをセットする setSize メソッドを定義して下さい。setSize メソッドは、二つの数値を使用して高さと幅を引数とするものと、一つの数値を使用して正方形とするものをオーバーロードして下さい。
⑤ main メソッド内で Square クラスのインスタンスを二つ生成し、変数名は、square1,square2 として下さい。square1 は高さ7、幅5とし、square2 は一辺の大きさが3の正方形として下さい。
⑥ Square クラスの定数フィールドを使って、四角形の辺の数を出力して下さい。
⑦ 二つの square 型インスタンスを使用して、高さ、幅、面積を出力して下さい。

実行例

四角形の辺の数は 4 です
square1 高さ:7 幅:5 面積:35
square2 高さ:3 幅:3 面積:9

問題 3 解答

正解は、、、
public class Main_0603 {
  public static void main(String[] args) {
    Square square1 = new Square();
    Square square2 = new Square();
    square1.setSize(7, 5);
    square2.setSize(3);
    System.out.println("四角形の辺の数は" + Square.num + "です");
    System.out.println(
      "square1"
        + " 高さ:" + square1.height
        + " 幅:" + square1.width
        + " 面積:" + square1.getArea());
    System.out.println(
      "square2"
        + " 高さ:" + square2.height
        + " 幅:" + square2.width
        + " 面積:" + square2.getArea());
  }
}

class Square {
  static int num = 4;
  int height;
  int width;
  
  int getArea() {
    return height * width;
  }

  void setSize(int height, int width) {
    this.height = height;
    this.width = width;
  }
  void setSize(int size) {
    this.height = size;
    this.width = size;
  }
}

Java練習問題 第11回では「コンストラクタ」から出題します。

(Visited 296 times, 2 visits today)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

エヌ・キャリア・アカデミーは「21世紀のこれからの激変する社会を生き抜き、第一線で活躍することのできる人材を世に送り出していく」ことを教育理念にかかげ、IT系の職業訓練を実施している職業訓練校です。

この記事は、エヌ・キャリア・アカデミーのスタッフが執筆しています。

企業ホームページ:https://n-career.jp/

コメント

コメントする

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

目次