【发布时间】:2022-12-17 09:12:37
【问题描述】:
我正在试验类,想知道是否可以根据其中一个类中的布尔值链接类。我有一个 Person 类,一个字段是私有的“布尔值 HasPet”。因此,如果一个人有宠物,那么我想制作一个宠物对象并将这些类链接在一起。这可能吗。我对课程完全陌生。我是否必须制作一个 ID 字段并像那样链接它们?
static void Main(string[] args)
{
Person Teacher = new Person("Phoebe", 32, "brown", "hazel", true);
}
public class Person
{
private string Name;
private int Age;
private string HairColour;
private string EyeColour;
private bool HasPet;
public Person(string name, int age, string hairColour, string eyeColour, bool hasPet)
{
Name = name;
Age = age;
HairColour = hairColour;
EyeColour = eyeColour;
HasPet = hasPet;
}
public void ChangePetStatus()
{
Console.Write($"We heard that your pet status has changed...");
if (HasPet == true)
{
Console.WriteLine("we are sorry to hear that. Pet status has been changed.");
HasPet = false;
}
else
{
Console.WriteLine("that's great. A pet is a lovely addition to the household. Pet status has been changed.");
HasPet = true;
}
}
public void Greetings()
{
Console.WriteLine($"Hello my name is {Name} and I am {Age} years old. I have {HairColour} hair and {EyeColour} eyes. It is {HasPet} that I have a pet.");
}
}
【问题讨论】:
-
不确定“链接在一起”的确切含义。我认为将
List<Pet>对象作为Personclass中的字段是有意义的。我想当有人打电话给ChangePetStatus时,你可以创建一个新的Petobject并将其存储在List<Pet>字段中。 -
您可能想为您的 Person 类提供另一个 Pet 类型的属性/字段,以防万一创建一个 Pet 对象并将其附加到该属性/字段。或者在你的措辞中用不同的措辞。您已经有像名称这样的字段。所以你已经将一个字符串“链接”到 Person 类。对 Pet 类做同样的事情。
-
喔好吧。我喜欢一个人可以有一个宠物列表,而不是我最初的 1。如果我在 Person 类中有一个新字段“Pet”,它是一个列表,我如何创建一个宠物对象并将其放入列表中?
-
只需创建它的一个实例:
var newPet = new Pet("Fluffy, the dog");,然后添加它:list.Add(newPet)。