Middle
Czy można tworzyć konstruktory z parametrami w klasie abstrakcyjnej?
sobes.tech AI
Odpowiedź od AI
W klasie abstrakcyjnej można tworzyć konstruktory z parametrami. Klasa abstrakcyjna może mieć dowolne konstruktory — zarówno bez parametrów, jak i z nimi. Jest to konieczne, aby podczas dziedziczenia klasy pochodne mogły wywołać te konstruktory w celu inicjalizacji podstawowej części obiektu.
Na przykład w C#:
abstract class Base
{
protected int value;
public Base(int val) { value = val; }
}
class Derived : Base
{
public Derived(int val) : base(val) {}
}
W związku z tym obecność konstruktorów z parametrami w klasie abstrakcyjnej jest powszechną praktyką służącą przekazywaniu danych do podstawowej części obiektu.