クラスとオブジェクト入門
CoddyのC#ジャーニー「オブジェクト指向プログラミング」セクションの一部 — レッスン 3/70。
クラスはオブジェクトを作成するための設計図です。オブジェクトは、データと振る舞いを含むクラスのインスタンスです。
プロパティを持つシンプルなクラスを定義します
public class Dog
{
public string Name { get; set; }
public int Age { get; set; }
}オブジェクトを初期化するためのコンストラクタを追加します
public class Dog
{
public string Name { get; set; }
public int Age { get; set; }
public Dog(string name, int age)
{
Name = name;
Age = age;
}
}振る舞いを定義するメソッドを追加します
public class Dog
{
public string Name { get; set; }
public int Age { get; set; }
public Dog(string name, int age)
{
Name = name;
Age = age;
}
public string Bark()
{
return $"{Name} says Woof!";
}
}オブジェクト(インスタンス)を作成して使用する
Dog myDog = new Dog("Buddy", 3);
Console.WriteLine(myDog.Bark());
Console.WriteLine($"Age: {myDog.Age}");出力:
Buddy says Woof!
Age: 3newキーワードはクラスのインスタンスを作成し、コンストラクタを呼び出します。同じクラスから、それぞれ異なるデータを持つ複数のオブジェクトを作成できます。
チャレンジ
簡単コンストラクタと Drive() メソッドを追加して、Car クラスを完成させてください。次に、Program.cs で Car オブジェクトを作成し、それを使用してください。
Drive() メソッドは、"The {Brand} is driving!" を返す必要があります。
チートシート
クラスはオブジェクトを作成するための設計図です。オブジェクトは、データと振る舞いを含むクラスのインスタンスです。
プロパティを持つクラスを定義します:
public class Dog
{
public string Name { get; set; }
public int Age { get; set; }
}オブジェクトを初期化するためのコンストラクタを追加します:
public class Dog
{
public string Name { get; set; }
public int Age { get; set; }
public Dog(string name, int age)
{
Name = name;
Age = age;
}
}振る舞いを定義するためのメソッドを追加します:
public string Bark()
{
return $"{Name} says Woof!";
}new キーワードを使用してオブジェクトを作成します:
Dog myDog = new Dog("Buddy", 3);
Console.WriteLine(myDog.Bark());
Console.WriteLine($"Age: {myDog.Age}");自分で試してみよう
using System;
class Program
{
static void Main()
{
string brand = Console.ReadLine();
int year = int.Parse(Console.ReadLine());
// TODO: 入力値を使用してCarオブジェクトを作成する
// TODO: "Car: {brand} ({year})" を出力する
// TODO: Drive() メソッドを呼び出し、その結果を出力する
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。