Middle
Ar galima kurti parametrinius konstruktorius abstrakčioje klasėje?
sobes.tech AI
Atsakymas iš AI
Abstrakčioje klasėje galima kurti parametrinius konstruktorius. Abstrakčioje klasėje gali būti bet kokie konstruktoriai — tiek be parametrų, tiek su jais. Tai būtina, kad paveldėjimo metu vaikų klasės galėtų iškviesti šiuos konstruktorius, norėdamos inicializuoti objekto pagrindinę dalį.
Pavyzdžiui, C#:
abstract class Base
{
protected int value;
public Base(int val) { value = val; }
}
class Derived : Base
{
public Derived(int val) : base(val) {}
}
Taigi, parametrinių konstruktorių buvimas abstrakčioje klasėje yra įprasta praktika duoti duomenis į objekto pagrindinę dalį.