<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.unkompliziert.eu/index.php?action=history&amp;feed=atom&amp;title=Vererbung_%28Programmierung%29</id>
	<title>Vererbung (Programmierung) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.unkompliziert.eu/index.php?action=history&amp;feed=atom&amp;title=Vererbung_%28Programmierung%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.unkompliziert.eu/index.php?title=Vererbung_(Programmierung)&amp;action=history"/>
	<updated>2026-04-29T11:46:04Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in unkompliziert.eu</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.unkompliziert.eu/index.php?title=Vererbung_(Programmierung)&amp;diff=83&amp;oldid=prev</id>
		<title>Felix: Die Seite wurde neu angelegt: „== Vererbung ==  Beim Überladen einer Methode der Basisklasse in einer Unterklasse muss folgendes beachtet werden.  Beispiel:  Basisklasse      class A     {…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.unkompliziert.eu/index.php?title=Vererbung_(Programmierung)&amp;diff=83&amp;oldid=prev"/>
		<updated>2020-04-11T08:12:46Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „== Vererbung ==  Beim Überladen einer Methode der Basisklasse in einer Unterklasse muss folgendes beachtet werden.  Beispiel:  Basisklasse      class A     {…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Vererbung ==&lt;br /&gt;
&lt;br /&gt;
Beim Überladen einer Methode der Basisklasse in einer Unterklasse muss folgendes beachtet werden.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
&lt;br /&gt;
Basisklasse&lt;br /&gt;
&lt;br /&gt;
    class A&lt;br /&gt;
    {&lt;br /&gt;
        public virtual void Methode1()&lt;br /&gt;
        {&lt;br /&gt;
            Console.WriteLine(&amp;quot;A Methode1&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
        public virtual void Methode2()&lt;br /&gt;
        {&lt;br /&gt;
            Console.WriteLine(&amp;quot;A Methode2&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
Erbende Klasse&lt;br /&gt;
&lt;br /&gt;
    class B:A&lt;br /&gt;
    {&lt;br /&gt;
        public new void Methode1()&lt;br /&gt;
        {&lt;br /&gt;
            Console.WriteLine(&amp;quot;B Methode1&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
        public override void Methode2()&lt;br /&gt;
        {&lt;br /&gt;
            Console.WriteLine(&amp;quot;B Methode2&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
Die Klassen werden folgendermaßen verwendet:&lt;br /&gt;
&lt;br /&gt;
A oA = new A();&lt;br /&gt;
B oB = new B();&lt;br /&gt;
A oAB = new B();&lt;br /&gt;
&lt;br /&gt;
In der Basisklasse (Klasse A) muss die Methode als '''virtual''' gekennzeichnet werden.&lt;br /&gt;
&lt;br /&gt;
Beim Überladen der Funktion in der Unterklasse (Klasse B) gibt es zwei Möglichkeiten.&lt;br /&gt;
&lt;br /&gt;
1.&lt;br /&gt;
Die überladene Funktion kann als '''new''' gekennzeichnet werden.&lt;br /&gt;
Das Schlüsselwort new bewirkt, dass ein Objekt beim Methodenaufruf immer die Methode der Klasse verwendet, unter der das Objekt deklariert wurde.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Methodenaufruf !! Ausgabe&lt;br /&gt;
|-&lt;br /&gt;
| oA.Methode1(); || A Methode1&lt;br /&gt;
|-&lt;br /&gt;
| oB.Methode1(); || B Methode1&lt;br /&gt;
|-&lt;br /&gt;
| oAB.Methode1(); || A Methode1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
2.&lt;br /&gt;
Die überladene Funktion kann als '''override''' gekennzeichnet werden.&lt;br /&gt;
Das Schlüsselwort override bewirkt, dass&lt;br /&gt;
* ein Objekt der Basisklasse beim Methodenaufruf die Methode Basisklasse verwendet&lt;br /&gt;
* ein Objekt der Unterklasse beim Methodenaufruf die Methode der Unterklasse verwendet&lt;br /&gt;
* ein Objekt, das als ein Objekt der Basisklasse deklariert wurde, real aber ein Objekt der Unterklasse enthält, die Methode der Unterklasse verwendet.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Methodenaufruf !! Ausgabe&lt;br /&gt;
|-&lt;br /&gt;
| oA.Methode2(); || A Methode2&lt;br /&gt;
|-&lt;br /&gt;
| oB.Methode2(); || B Methode2&lt;br /&gt;
|-&lt;br /&gt;
| oAB.Methode2(); || B Methode2&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Felix</name></author>
		
	</entry>
</feed>