Files
ObiektowaTeoria/konstruktor_dekonstruktor.cs
T
2026-07-16 12:19:17 +02:00

41 lines
1.7 KiB
C#

namespace ObiektowaTeoria
{
// Definicja klasy Pracownik
// Zobacz w pliku Program.cs:20 jak używać tej klasy
public class Pracownik
{
public string Imie;
public string Nazwisko;
// Konstruktor klasy - metoda, która ma taką samą nazwę jak klasa
// i jest wywoływana automatycznie w momencie tworzenia obiektu
// (przy użyciu słowa kluczowego new). Jego zadaniem jest inicjalizacja
// pól i właściwości obiektu, czyli nadanie mu początkowego stanu.
// Jeżeli nie zdefiniujemy żadnego konstruktora, kompilator doda
// konstruktor domyślny bez parametrów
public Pracownik(string imie)
{
Imie = imie;
Nazwisko = "bez nazwiska";
Console.WriteLine($"Konstruktor wywołany dla: {imie} bez nazwiska");
}
// Można tworzyć wiele konstruktorów z różną listą parametrów (przeciążanie konstruktorów)
public Pracownik(string imie, string nazwisko)
{
Imie = imie;
Nazwisko = nazwisko;
Console.WriteLine($"Konstruktor wywołany dla: {imie} {nazwisko}");
}
// Destruktor klasy - metoda wywoływana podczas usuwania obiektu z pamięci przez mechanizm
// zbierania śmieci (garbage collector). Umożliwia zwalnianie zasobów niezarządzanych (np.
// uchwytów do plików, połączeń sieciowych). Destruktor jest wywoływany w sposób niejawny i
// nie można jednoznacznie przewidzieć momentu jego wywołania.
~Pracownik()
{
Console.WriteLine($"Destruktor wywołany dla: {Imie} {Nazwisko}");
}
}
}