Лабораторная работа по C#. Классы

Задача: создайте отдельный класс, соответствующий классу объектов из вашей предметной области (необходимо задать не менее 5 свойств для создаваемого класса). Добавьте метод для вывода описания объекта класса, используя метод ToString(). Этот метод должен в удобном для читателя виде перечислять все заданные значения свойств объекта класса.

Неопределенности задачи

Что касается класса. то тут мы, судя по тексту задачи, имеем право определить вообще любой класс. Главное, чтобы этот класс содержал не менее пяти свойств. Для примера, возьмем класс, описывающий программиста.

В задаче не сказано какие типы данных использовать для задания свойств — только строки, только числа или же мы вольны сами выбирать удобный для нас тип данных под каждое свойство? Для простоты, ограничимся тем условием, что все типы данных, используемые для задания свойств класса будут относиться к типам значений.

Решение лабораторной работы

Все классы в C# так или иначе являются наследниками класс Object, у которого определен виртуальный метод ToString(). В этой лабораторной работе нам необходимо переопределить метод ToString() базового класса для того, чтобы вывести значения свойств объекта в удобном для читателя виде. Напишем такой класс, описывающий типичного программиста:

public class Programmer
{ 
    public string Name { get; set; } //имя
    public string Surname { get; set; } //фамилия
    public byte Age { get; set; } //возраст
    public byte Experience { get; set; } //стаж работы
    public string Language { get; set; } //язык на котором пишет 

    public override string ToString()
    {
        return $"Имя: {Name}\r\nФамилия: {Surname}\r\nВозраст: {Age} лет\r\nСтаж работы: {Experience} лет\r\nПишет на {Language}";
    }
}

Здесь стоит обратить на переопределенный метод ToString(). Здесь мы использовали интерполяцию строк для составления описания, а для того, чтобы повысить читабельность описания в консоли, использовали escape-последовательности.

Код основной программы будет таким:

class Program
{
    static void Main(string[] args)
    {
        Programmer programmer = new Programmer();
        programmer.Name = "Вася";
        programmer.Surname = "Пупкин";
        programmer.Age = 25;
        programmer.Experience = 7;
        programmer.Language = "C#";
        Console.WriteLine(programmer.ToString());
    }
}

Результат работы программы:

Имя: Вася
Фамилия: Пупкин
Возраст: 25 лет
Стаж работы: 7 лет
Пишет на C#

Весь исходный код программы

Весь исходный код программы к лабораторной работе представлен ниже:

using System;

namespace LabRab_2
{
    public class Programmer
    { 
        public string Name { get; set; } //имя
        public string Surname { get; set; } //фамилия
        public byte Age { get; set; } //возраст
        public byte Experience { get; set; } //стаж работы
        public string Language { get; set; } //язык на котором пишет 

        public override string ToString()
        {
            return $"Имя: {Name}\r\nФаммилия: {Surname}\r\nВозраст: {Age} лет\r\nСтаж работы: {Experience} лет\r\nПишет на {Language}";
        }
    }
    
    class Program
    {
        static void Main(string[] args)
        {
            Programmer programmer = new Programmer();
            programmer.Name = "Вася";
            programmer.Surname = "Пупкин";
            programmer.Age = 25;
            programmer.Experience = 7;
            programmer.Language = "C#";
            Console.WriteLine(programmer.ToString());
        }
    }
}

Итого

Умение создавать собственные классы в программе — один из ключевых навыков в объектно-ориентированном программировании. В этой лабораторной работе мы научились создавать собственные классы и переопределять методы базового класса.

Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии