Передача объекта в метод в C#
Параметр метода может иметь тип класса. В метод попадает копия ссылки на объект - через нее доступны поля и методы переданного экземпляра:
class Post
{
public string title = "";
public string text = "";
}
Создадим запись и передадим ее в метод, который печатает заголовок:
void PrintTitle(Post post)
{
Console.WriteLine(post.title);
}
Post post = new Post();
post.title = "News";
post.text = "Hello";
PrintTitle(post);
Метод экземпляра тоже принимает объекты других классов.
Коллекция записей добавляет элемент методом Add:
PostFeed feed = new PostFeed();
Post news = new Post();
news.title = "News";
feed.Add(news);
feed.ShowTitles();
class PostFeed
{
public List<Post> posts = new List<Post>();
public void Add(Post post)
{
posts.Add(post);
}
public void ShowTitles()
{
foreach (Post post in posts)
{
Console.WriteLine(post.title);
}
}
}
Изменение полей объекта внутри метода видно снаружи - метод работает с тем же экземпляром:
void MarkPublished(Post post)
{
post.title = "News";
}
Post post = new Post();
post.title = "Draft";
MarkPublished(post);
Console.WriteLine(post.title);
Сделайте вывод зарплаты работника Employee отдельной операцией, которая принимает объект работника параметром.
Сделайте класс Team, который хранит работников и умеет добавлять нового участника. Добавьте двух работников и выведите их имена.