アットウィキロゴ

Ougi

■円クラス(Circle.java)を拡張して扇クラスを作りましょう。

※注意:以前作ったCircleクラスの以下のものにprivate修飾子を付けてください。
■フィールド
  • int x;
  • int y;
■メソッド
  • setLocation
  • isOver

■フィールド
 ・新たに中心角を表すdouble radを追加して下さい
■コンストラクタ(4つ)
  • 引数なし:半径の長さを5、中心角を45.0で初期化
  • (int radius):半径の長さを受け取り設定する。中心角は45度
  • (double rad):中心角の長さを受け取り設定する。半径の長さは5。
  • (int radius, double rad):半径と中心角を設定する。

■メソッド
  • double getArea():メソッドをオーバーライドして扇形の面積を返すように。
  • String toString():メソッドをオーバーライドしましょう。例)「[半径:5, 中心角:45度]」というように表示される。

public static void main(String[] args){
   Ougi a = new Ougi(4, 90.0);
   Circle b = new Circle(4);
   
   System.out.println(a.toString() + "面積は" + a.getArea());
   System.out.println(b.toString() + "面積は" + b.getArea());
}

解答例)→-Ougi.java

※追加問題希望者のみ
■フィールドのradは中心角の大きさを表している。ここで以下の条件の数値が来た場合は自動的に変換が起こるように改良しなさい。
  • -1や-100などの値が来た場合は、それぞれ1や100など+の値として扱う
  • 460など360以上の値が来た場合には、100にするなど360で割ったあまりの値として扱う

ヒント:void setRad(double rad)というメソッドを追加すると楽になるかもしれない。

※追加問題解答→-Ougi.java-その他-

タグ:

+ タグ編集
  • タグ:
最終更新:2012年01月25日 11:36