*グラフィックス基礎及び実習 2017年度 第7回 課題C [#e9701092]

//&color(#ff0000){工事中}; 

[[グラフィックス基礎及び実習 2017年度 第7回>Graphics/2017/ex07]] へ

#contents


**HogeoFrameクラスのAPI仕様 [#HogeoFrame]

コンストラクタ

:HogeoFrame() | 大きさ 400 x 400 の HogeFrame を生成する.
:HogeoFrame() | 大きさ 400 x 400 の HogeoFrame を生成する.

メソッド

:void add(Hogeo h) | ほげお h をこのウィンドウに追加する.

**HogeoクラスのAPI仕様 [#Hogeo]

コンストラクタ

:Hogeo() | 座標 (200, 200) に年齢20歳の Hogeo を生成する.
:Hogeo(int age)  | 座標 (200, 200) に年齢 age 歳の Hogeo を生成する.

メソッド

:void bk(int n) | n だけ後ろに動く.
:void bk(int x, int y) | 後ろ向きに座標 (x, y) まで動く.
:static void change() | すべての Hogeo の絵の色が,緑 → 青 → 赤 → 緑 → 青 → … の順に切り替わる.デフォルトは緑で,このメソッドを一度呼ぶと青に,もう一度呼ぶと赤になる.

フィールド

:int age | 年齢.
:static boolean hirunechu | すべての Hogeo の状態を表す.true なら「昼寝中」,さもなくば「起きてる」.初期値は false.「昼寝中」なら bk メソッドを呼んでも Hogeo は動かないが,「起きてる」なら動く.

**問1 [#u1bf8e0f]

上記の HogeoFrame クラスと Hogeo クラスの API仕様にもとづいてあるプログラムを作ると,次のような15行からなるソースファイルができた.以下の各行の左端は行番号に対応し,各文は,ソースファイルの該当行の内容を説明している.このプログラムを書きなさい.

+ クラス定義のはじまり.クラス名は HogeHogeo とする.
+ mainメソッドの定義のはじまり.
+ HogeoFrame のインスタンスを生成する.変数名は f とする.
+ 引数なしのコンストラクタを使って Hogeo のインスタンスを生成する.変数名は自分で決めればよい.
+ 45歳の Hogeo のインスタンスを生成する.変数名は自分で決めればよい.
+ 20歳の Hogeo を f のウィンドウに追加する.
+ 45歳の Hogeo を f のウィンドウに追加する.
+ 20歳の Hogeo を後ろに 100 動かす.
+ Hogeo たちの絵の色を青に変える.
+ Hogeo たちの絵の色を赤に変える.
+ 45歳の Hogeo を (0, 0) の位置に動かす.
+ 45歳の Hogeo の年齢を 99 にする.
+ Hogeo たちを「昼寝中」にする.
+ mainメソッドの定義のおわり
+ クラス HogeHogeo の定義のおわり

**問2 [#kd6bbee1]

問1の15行のうち10行目から13行目までの4行は,それぞれ,以下のAからDまでのいずれかひとつに当てはまる.それぞれに最も適切なものを選びなさい.

-A: Hogeo クラスのインスタンスメソッドを呼び出している
-B: Hogeo クラスのインスタンス変数に値を代入している
-C: Hogeo クラスのクラスメソッドを呼び出している
-D: Hogeo クラスのクラス変数に値を代入している

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS