演習課題「オブジェクト生成時にフィールドを初期化しよう1」
右のコードエリアには予めメインとなるPracticeクラスと、
Humanクラスが定義されています。
MainメソッドからHumanクラスのオブジェクトを生成し、Greet()メソッドを呼び出してください。
ただし、Humanクラスのnameフィールドは「霧島京子」で初期化してください。
Humanクラスのオブジェクトを格納する変数の名前は自由とします
オブジェクト生成時にnameフィールドを受け取るコンストラクタはすでに定義されています。
期待する出力値
みなさんこんにちは霧島京子です
演習課題「オブジェクト生成時にフィールドを初期化しよう2」
右のコードエリアには予めメインとなるPracticeクラスと、
Humanクラスが定義されています。
PracticeクラスのMainメソッドではHumanクラスのオブジェクトを生成し、
コンストラクタの引数に文字列を指定してnameフィールドを初期化していますが、
Humanクラスのコンストラクタがまだ定義されていません。
Humanクラスにコンストラクタを定義し、オブジェクト生成時にnameフィールドを初期化する処理を実装してください。
期待する出力値
みなさんこんにちは霧島京子です
#03:変数をクラスで管理しよう
クラスで変数を管理する方法を学習します。前回のチャプターで、メソッドを持つオブジェクトを作りましたので、オブジェクトに変数を持たせてみましょう。
コンストラクタとは、名前がその型の名前(クラスの名前)と同じメソッドのことです。
クラスからオブジェクトを作成するたびに呼び出されるメソッドです。
フィールドとは、クラスに定義されている変数のことです。
オブジェクトが存在する限り、値が保持されます。
クラスの現在のインスタンスを参照するときに、付け加えるキーワードです。
// 変数をクラスで管理しよう
using System;
public class Lesson07
{
public static void Main()
{
var player1 = new Player("戦士");
player1.Walk();
var player2 = new Player("魔法使い");
player2.Walk();
player1.Walk();
}
}
public class Player
{
private string name;
public Player(string name)
{
this.name = name;
}
public void Walk()
{
Console.WriteLine(name + "は荒野を歩いていた");
}
}
一週間で身につくC#言語の基本|第6日目:クラスとオブジェクト
http://csharp.sevendays-study.com/day6.html
コンストラクター - C# によるプログラミング入門 | ++C++; // 未確認飛行 C
https://ufcpp.net/study/csharp/oo_construct.html
C# のクラスとオブジェクト - C# 言語のツアー | Microsoft Docs
https://docs.microsoft.com/ja-jp/dotnet/csharp/tour-of-csharp/classes-and-objects
コンストラクター - C# プログラミング ガイド | Microsoft Docs
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/classes-and-structs/constructors
フィールド - C# プログラミング ガイド | Microsoft Docs
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/classes-and-structs/fields