Was ist Polymorphism?

Was ist Polymorphism?

In der Informatik bezieht sich Polymorphismus auf die Fähigkeit einer Programmiersprache, Objekte basierend auf ihrer Klasse oder ihrem Datentyp auf unterschiedliche Weise zu interpretieren. Im Wesentlichen ist es die Fähigkeit einer einzelnen Methode, auf abgeleitete Klassen angewendet zu werden und eine ordnungsgemäße Ausgabe zu erzielen.

Tipp

Sie können sich dieses Wort merken, indem Sie es zerlegen. Das Wort „poly“ bedeutet „viele“ und „morph“ bedeutet „Form“.

Drei Zweige des Polymorphismus

  • Ad-hoc-Polymorphismus liegt vor, wenn eine Funktion abhängig von einer begrenzten Anzahl von angegebenen Typen und Kombinationen von Eingabeparametern unterschiedlich implementiert wird. Ein Beispiel für Ad-hoc-Polymorphismus ist das Überladen von Funktionen.

  • Parametrischer Polymorphismus liegt vor, wenn Code ohne Angabe des Typs geschrieben wird und daher mit einer beliebigen Anzahl von verschiedenen Typen verwendet werden kann, die später angegeben werden. In der objektorientierten Programmierung wird dies oft als generische Programmierung bezeichnet.

  • Einschlusspolymorphismus, auch als Subtypisierung bekannt, liegt vor, wenn sich ein einzelner Name auf viele Instanzen verschiedener Klassen bezieht, solange sie dieselbe Oberklasse teilen.

Beispiel für Polymorphismus in Java

Beispielcode

class OverloadedObject 
{
  void overloadedMethod (int a) 
  {
    System.out.println("This method is called when the parameter is an 
integer. a = " + a);
  }
  void overloadedMethod (int a, int b) 
  {
    System.out.println("This method is called when there are two 
parameters, and they are both integers. a = " + a + ", b = " + b);
  }
  void overloadedMethod (double a)
  {
    System.out.println("This method is called when there is one 
parameter, and it is a double-precision number. a = " + a);
  }
}
class DemonstrateOverloading
{
  public static void main (String args [])
  {
    OverloadedObject myObj = new OverloadedObject(); 
    myObj.overloadedMethod(1);
    myObj.overloadedMethod(2, 3);
    myObj.overloadedMethod(4);
  }
}

Beispielcodeausgabe

This method is called when the parameter is an integer. a = 1
This method is called when there are two parameters, and they 
are both integers. a = 2, b = 3
This method is called when the parameter is a double-precision number. a = 4

Beachten Sie, dass es basierend auf unterschiedlichen Eingabeparametern unterschiedliche Ausgaben erzeugt, obwohl die aufgerufenen Klassen- und Methodennamen jedes Mal gleich sind.

Objektorientiert, Ausgabe, Parameter, Polymorpher Virus, Programmiersprache, Programmierbegriffe

Neueste Artikel
Vielleicht möchten Sie lesen

LEAVE A REPLY

Please enter your comment!
Please enter your name here