Skip to content

Nedarvning (Inheritance)

Det betyder at en klasse nedarver fra en anden klasse, og dermed får alle dens klasses felter, properties og metoder.

Eksempel:

c#
public class Animal 
{
	public string Name { get; set; }
	
	public void Eat() 
	{
		// do something
	}
	
	public void Sleep() 
	{
		// do something
	}
} 

public class Dog : Animal 
{
	public string Breed { get; set; }
	
	public Bark() 
	{
		// do something
	}
}

Base class

Base class er den oprindelige klasse, som andre klasser nedarver fra.

Derived class

Derived class er den klasse som har nedarvningen.

Sealed class

Hvis det er en sealed class, kan klassen ikke nedarves fra.

Eksempel:

c#
public sealed class Animal 
{
	public string Name { get; set; }
	
	public void Eat() 
	{
		// do something
	}
	
	public void Sleep() 
	{
		// do something
	}
}

Abstract class

Betyder bare, at vi tillader nedarvningerne at override base klassens metoder.

Eksempel:

c#
public abstract class Animal 
{
	public string Name { get; set; }
	
	public void Eat() 
	{
		// do something
	}
	
	public void Sleep() 
	{
		// do something
	}
	
	public abstract void MakeSound() 
	{
		// do something
	}
}

public class Dog : Animal 
{
	public string Breed { get; set; }
	
	public override void MakeSound()
	{
		// do something, like make the dog bark
	}
}