<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.learnj.de/10/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.learnj.de/10/feed.php">
        <title>Informatik 10 - polymorphismus</title>
        <description></description>
        <link>https://www.learnj.de/10/</link>
        <image rdf:resource="https://www.learnj.de/10/lib/exe/fetch.php?media=logo.png" />
       <dc:date>2026-04-11T04:24:09+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.learnj.de/10/doku.php?id=polymorphismus:abstractclasses&amp;rev=1678649696&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.learnj.de/10/doku.php?id=polymorphismus:casting&amp;rev=1678381240&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.learnj.de/10/doku.php?id=polymorphismus:methodoverriding&amp;rev=1678381354&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.learnj.de/10/doku.php?id=polymorphismus:start&amp;rev=1678380600&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.learnj.de/10/lib/exe/fetch.php?media=logo.png">
        <title>Informatik 10</title>
        <link>https://www.learnj.de/10/</link>
        <url>https://www.learnj.de/10/lib/exe/fetch.php?media=logo.png</url>
    </image>
    <item rdf:about="https://www.learnj.de/10/doku.php?id=polymorphismus:abstractclasses&amp;rev=1678649696&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-12T19:34:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>abstractclasses</title>
        <link>https://www.learnj.de/10/doku.php?id=polymorphismus:abstractclasses&amp;rev=1678649696&amp;do=diff</link>
        <description>Abstrakte Klassen


Es macht eigentlich keinen Sinn, die Methode sagwas() in der Klasse Tier zu implementieren. Es würde reichen, sie dort nur zu deklarieren (void sagwas();) und die Implementierung (d.h. die Erstellung der Anweisungen in der Methode drin) den Unterklassen</description>
    </item>
    <item rdf:about="https://www.learnj.de/10/doku.php?id=polymorphismus:casting&amp;rev=1678381240&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-09T17:00:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>casting</title>
        <link>https://www.learnj.de/10/doku.php?id=polymorphismus:casting&amp;rev=1678381240&amp;do=diff</link>
        <description>Casten (explizite Typumwandlung)

Wir erweitern die Klasse Katze um eine Methode miaue und die Klasse Hund um eine Methode belle:


Können wir diese Methoden mit Hilfe der Variable t aufrufen?


Tier t; 
t = new Katze(&quot;Snoopy&quot;);
t.miaue(); // GEHT NICHT!

t = new Hund(&quot;Bello&quot;);
t.belle(); // GEHT NICHT!</description>
    </item>
    <item rdf:about="https://www.learnj.de/10/doku.php?id=polymorphismus:methodoverriding&amp;rev=1678381354&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-09T17:02:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>methodoverriding</title>
        <link>https://www.learnj.de/10/doku.php?id=polymorphismus:methodoverriding&amp;rev=1678381354&amp;do=diff</link>
        <description>Überschreiben von Methoden




Tier t;
t = new Katze(&quot;Snoopy&quot;);
t.miaue(); //Geht nicht!
t = new Hund(&quot;Harro&quot;);
t.belle(); //Geht nicht!


Wir wissen, dass wir in der obigen Situation die Methoden miaue und belle nur durch umständliches Casten aufrufen können. Aber wir könnten den Compiler doch austricksen:</description>
    </item>
    <item rdf:about="https://www.learnj.de/10/doku.php?id=polymorphismus:start&amp;rev=1678380600&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-09T16:50:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>start</title>
        <link>https://www.learnj.de/10/doku.php?id=polymorphismus:start&amp;rev=1678380600&amp;do=diff</link>
        <description>Polymorphismus

1. Definition

Wir beginnen mit einem einfachen Beispiel, in dem wir zu einer Oberklasse (Tier) zwei Unterklassen (Katze, Hund) bilden:


Einer Variablen vom Typ Tier können wir sowohl Hund-Objekte als auch Katze-Objekte zuordnen. In beiden Fällen können wir die Methode</description>
    </item>
</rdf:RDF>
