【ClassPractice03】引数を持つメソッドを作ってみよう
前回は、
クラスの中に処理(メソッド)を書ける
ことを学びました。
今回は一歩進みます。
メソッドに値を渡してみます。
これを「引数(ひきすう)」といいます。
難しく考えなくて大丈夫です。
目次
① プロジェクトを追加する
- ExtraPractice.sln を開く
- ソリューションを右クリック
- 「追加」→「新しいプロジェクト」
- 「コンソール アプリ」を選択
- プロジェクト名を
ClassPractice03
にする
6. 作成をクリック
② Playerクラスを作る
ClassPractice03 を右クリック
→「追加」→「クラス」
→ Player.cs
③ Player.cs に書く
namespace ClassPractice03
{
public class Player
{
public string Name;
public int Hp;
public void ShowStatus()
{
Console.WriteLine("名前: " + Name);
Console.WriteLine("HP: " + Hp);
}
public void TakeDamage(int damage)
{
Hp = Hp - damage;
Console.WriteLine(Name + " は " + damage + " のダメージを受けた!");
}
}
}
新しく追加された部分
public void TakeDamage(int damage)
ここがポイントです。
int damage が
引数(ひきすう)
です。
■ 引数とは?
今はこれだけ覚えればOKです。
メソッドに渡す値
です。
④ Program.cs に書く
Player p1 = new Player();
p1.Name = "勇者";
p1.Hp = 100;
p1.ShowStatus();
p1.TakeDamage(30);
p1.ShowStatus();
⑤ F5で実行
結果:
名前: 勇者
HP: 100
勇者 は 30 のダメージを受けた!
名前: 勇者
HP: 70
■ ここで何が起きている?
この行です。
p1.TakeDamage(30);
30 が
damage
に渡されます。
そして
Hp = Hp - damage;
で HP が減ります。
■ 重要なポイント
引数を使うことで、
同じ処理をいろいろな値で使える
ようになります。
例えば:
p1.TakeDamage(10);
p1.TakeDamage(50);
どんなダメージでも対応できます。
■ 今日のゴール
✔ 引数を持つメソッドを書けた
✔ 値を渡せた
✔ オブジェクトの状態が変化した
■ 今はまだ覚えなくていいこと
- 戻り値
- 複数引数
- オーバーロード
- private
段階的に進みます。
まとめ
ClassPractice01
→ データをまとめた
ClassPractice02
→ 処理をまとめた
ClassPractice03
→ 値を渡せるようになった
ここまでできれば、
クラスの理解はかなり進んでいます。
訪問数 4 回, 今日の訪問数 4回



ディスカッション
コメント一覧
まだ、コメントがありません