Junior — Middle
Vai objekts mainīsies, ja tā metode tiks pārrakstīta apakšklasē?
sobes.tech AI
Atbilde no AI
Ja apakšklasē pārrakstāt pamata klases metodi, tad, izsaucot šo metodi apakšklases objektā, tiks izmantota jauna realizācija. Objekts kā apakšklases instances nemainās, bet metodes uzvedība mainās. Tas ļauj mainīt vai paplašināt funkcionalitāti bez sākotnējās klases maiņas.
Piemērs C#:
class BaseClass
{
public virtual void ShowMessage()
{
Console.WriteLine("Pamatklases ziņa");
}
}
class DerivedClass : BaseClass
{
public override void ShowMessage()
{
Console.WriteLine("Apakšklases ziņa");
}
}
// Izmantošana
BaseClass obj = new DerivedClass();
obj.ShowMessage(); // Izvadīs: "Apakšklases ziņa"
Tādējādi objekta struktūra nemainās, bet tā uzvedība ar metodes palīdzību mainās.