Cos'è il polimorfismo in javascript

Cos'è il polimorfismo in javascript
Il termine polimorfismo deriva dalla parola "Polimorfo," Dove "Poli" significa "Molti" E "Morph" significa "Trasformare una forma in un'altra". Nella programmazione orientata agli oggetti, il polimorfismo consente di eseguire la stessa operazione in più modi. Ti consente di invocare lo stesso metodo con diversi oggetti JavaScript passando per i membri dei dati selezionati.

Questo articolo discuterà il polimorfismo in JavaScript con l'aiuto di esempi appropriati. Quindi iniziamo!

Cos'è il polimorfismo in javascript

Gli oggetti potrebbero agire in modo diverso in contesti diversi perché tutti i principi di programmazione orientati agli oggetti si basano sull'uso degli oggetti. Il polimorfismo si riferisce al concetto che possono esserci più forme di un singolo metodo e, a seconda dello scenario di runtime, un tipo di oggetto può avere un comportamento diverso. Utilizza "Eredità" per questo scopo.

Nel polimorfismo, più oggetti possono avere gli stessi metodi ma con implementazioni diverse e un oggetto e il suo metodo correlato sono selezionati in base alle preferenze dell'utente.

Esempio 1: usando il polimorfismo in JavaScript

Gli animali sono spesso usati per spiegare il polimorfismo. Nell'esempio seguente, "Animale"È una classe genitore mentre, Gatto E Cane sono le sue classi derivate o per bambini. Il metodo Speak () è comune in entrambe le classi di bambini. L'utente può selezionare un oggetto da qualsiasi classe figlio in fase di esecuzione e l'interprete JavaScript invocherà "parlare()"Metodo di conseguenza.

Secondo la descrizione di cui sopra, abbiamo definito il genitore Animale classe e le sue due lezioni di bambini, Gatto E Cane, nel nostro programma. Quindi abbiamo aggiunto un "parlare()"Metodo nella classe animale.

In questo esempio, non definiremo il "parlare()"Metodo nelle classi di bambini. Di conseguenza, la classe di gatti e cani utilizzerà la classe animale "parlare()" metodo:

animale di classe

parlare()

console.log ("Gli animali hanno suoni diversi");


Classe Cat estende l'animale


Il cane di classe estende l'animale

Successivamente, creeremo due oggetti; uno per il "Gatto"E altro per il"Cane”Rispettivamente la classe e poi invoca il"parlare()"Metodo della classe genitore con l'aiuto degli oggetti creati:

var cat = new cat ();
gatto.parlare();
var dog = new dog ();
cane.parlare();

Puoi vedere dall'output di seguito che il "parlare()"Il metodo della classe animale viene eseguito due volte:

Esempio 2: Uso del polimorfismo con metodo che prevale in JavaScript

Metodo prevalente è un tipo specifico di polimorfismo che consente a una classe figlio di implementare il metodo già aggiunto nella classe genitore o di base, in modo diverso. In tal modo, la classe figlio sovrascrive il metodo della classe genitore.

JavaScript Interpreter determinerà quale metodo si desidera eseguire. Se hai creato un oggetto Classe Parente, verrà eseguito il metodo che esiste nella classe Parent. Tuttavia, invocare lo stesso metodo con l'oggetto della classe figlio eseguirà il metodo di classe figlio o derivato.

In questo esempio, sovrascriveremo il "parlare()Metodo del "Animale"Classe usando il polimorfismo. A tale scopo, scriveremo il metodo Speak () nel nostro Gatto E Cane classi che sovrascriveranno il metodo Speak () della classe genitore. Infine, invocheremo i metodi definiti usando un ciclo foreach:

animale di classe

parlare()
console.log ("Gli animali hanno suoni diversi");

Classe Cat estende l'animale

parlare()
console.log ("Cat dice Meow Meow");

Il cane di classe estende l'animale

parlare()
console.log ("dog dy woof woof");

var x = [new cat (), new dog ()]
X.foreach (function (info)
informazioni.parlare(); );

L'output mostrerà le stringhe aggiunte nel "parlare()"Metodo delle classi di gatti e cani:

Può essere chiaramente verificato dall'output sopra, il parlare() metodo di Animale La classe è ignorata dalle classi di bambini (Gatto E Cane).

Perché dovresti usare il polimorfismo in JavaScript

Ecco alcuni dei vantaggi dell'uso del polimorfismo in JavaScript:

  • Il polimorfismo consente ai programmatori di riutilizzare il codice, che risparmia tempo.
  • La conversione di tipo implicita è supportata dal polimorfismo.
  • Consente a una classe figlio di avere lo stesso metodo Nome aggiunto nella classe principale, con funzionalità diverse.
  • In diversi scenari, la funzionalità di un metodo viene aggiunta in modo diverso.
  • Variabili singole possono essere utilizzate per la memorizzazione di più tipi di dati.

Conclusione

Il polimorfismo in JavaScript si riferisce al concetto di riutilizzare un singolo pezzo di codice più volte. Utilizzando il polimorfismo, è possibile definire più forme di un metodo e, a seconda dello scenario di runtime, un tipo di oggetto può avere un comportamento diverso. Questo articolo ha discusso del polimorfismo in JavaScript con l'aiuto di esempi appropriati.