Quick actions

cmd+k|ctrl+k

Navigation

Languages

Daniil Zimin RZ-233

Snippet info

Language

Csharp

Visibility

public

Author

danya1zimin

Created

2025-04-09T09:51:09.095582Z

Updated

2025-04-09T09:51:44.326601Z

using System;

class Parent
{
    public string Name;

    static Parent()
    {
        Console.WriteLine("Статичний конструктор батьківського класу");
    }

    public Parent()
    {
        Name = "Олександр Зімін";
        Console.WriteLine("Конструктор за замовчуванням батьківського класу");
    }

    public Parent(string name)
    {
        Name = name;
        Console.WriteLine($"Параметризований конструктор батьківського класу: {Name}");
    }
}

class Child : Parent
{
    public string StudentName;
    public bool IsPresent;

    static Child()
    {
        Console.WriteLine("Статичний конструктор дочірнього класу");
    }

    public Child() : base()
    {
        StudentName = "Данііл Зімін";
        Console.WriteLine("Конструктор за замовчуванням дочірнього класу");
    }

    public Child(string parentName, string studentName) : base(parentName)
    {
        StudentName = studentName;
        Console.WriteLine($"Параметризований конструктор дочірнього класу: {StudentName}");
    }

    public Child(Child other) : base(other.Name)
    {
        StudentName = other.StudentName;
        IsPresent = other.IsPresent;
        Console.WriteLine("Конструктор копіювання дочірнього класу");
    }

    public void CheckAttendance()
    {
        string status = IsPresent ? "Присутній на занятті" : "Відсутній на занятті";
        Console.WriteLine($"{StudentName}: {status}");
    }
}

class Program
{
    static void Main()
    {
        Console.WriteLine("1. Створення об'єкта за замовчуванням");
        Child student1 = new Child();
        student1.IsPresent = true;
        student1.CheckAttendance();

        Console.WriteLine("\n2. Створення об'єкта з параметрами");
        Child student2 = new Child("Олександр Зімін", "Данііл Зімін");
        student2.IsPresent = false;
        student2.CheckAttendance();

        Console.WriteLine("\n3. Копіювання об'єкта");
        Child student3 = new Child(student2);
        student3.IsPresent = true;
        student3.CheckAttendance();
    }
}
INFO