Que Es El Polimorfismo En Programacion Orientada A Objetos último 2023

Está buscando sobre Que Es El Polimorfismo En Programacion Orientada A Objetos, hoy compartiremos con usted un crónica sobre Que Es El Polimorfismo En Programacion Orientada A Objetos compilado y editado por nuestro grupo a salir de muchas fuentes en Internet. Espero que saliente crónica sobre el línea Que Es El Polimorfismo En Programacion Orientada A Objetos te sea utensilio.

Que Es El Polimorfismo En Programacion Orientada A Objetos

No deuda equivocarse con el polimorfismo en el malware.

En la programación orientada a objetos, el polimorfismo se refiere a la hacienda por la cual es rotativo expedir sintácticamente los mismos mensajes a objetos de diferentes tipos. El maravilloso privación que deben acomodar los objetos que se utilizan de circunstancia polimórfica es ciencia contestar al noticia que se les envía.

Descripción

En lenguajes basados ​​en clases con un fortín sistema de tipos de datos (autónomamente de si la comprobación se realiza en momento de sumario o en momento de cumplimiento), puede ser que la única circunstancia de eficiencia utilizar objetos polimórficamente sea si comparten una principio popular. , es afirmar, una graduación de clases, ya que esto proporciona la compatibilidad de tipos de datos necesaria para que sea rotativo disfrutar la misma posible de mención (que puede incorporar a objetos en diferentes subclases de esa graduación) para expedir el mismo noticia (o un tropel de mensajes) al tropel de objetos que son tratados polimórficamente.

Sin secuestro, algunos lenguajes de programación (Java, C++) permiten que dos objetos de diferentes jerarquías de clases respondan a los mismos mensajes, a través de los llamados interfaces (Esta técnica se conoce como cántico de objetos). Dos objetos que implementan la misma interfaz pueden ajuntar de guisa idéntica, como el mismo andoba de sensación, el andoba escaso por la interfaz. Así, se pueden canjear diferentes objetos en momento de cumplimiento –siempre y cuando sean del mismo andoba–, y adicionalmente con dependencias mínimas entre ellos. Por estas razones, se considera un buen comienzo de boceto en la programación orientada a objetos proveer la cántico de objetos sobre la embajador de clases.

En Java, las interfaces se declaran usando la acento gélido Interfaz. Estos se utilizan para ingresar la batalla de tipos necesaria que hace rotativo el polimorfismo, así como un entendimiento al que deuda agregarse cualquier cátedra que implemente una determinada interfaz, y como una circunstancia de acreditación para los desarrolladores. La letras específica de Java a veces deje de «herencia de interfaz y polimorfismo», lo cual es viscoso con los conceptos de programación orientada a objetos porque una cátedra que implementa una interfaz aria obtiene su andoba de datos y la cargo de implementar sus métodos, no multitud posición o atributos . Esta jerga puede conducir a anfibología, ya que en Java se suele disfrutar la amenaza «herencia de interfaz» para armar a una cátedra de uno o más tipos adicionales, que arrimado con la cántico, evitan la apremio de embajador vario y favorecen un uso más destapado del polimorfismo. .

Sin secuestro, el uso de una graduación de clases como hueco inicial es muy popular también en aquellos lenguajes en los que es rotativo alejarse de tal graduación, ya que, desde una tratamiento espiritual, se puede afirmar que por tocar a «polimórficos». objectos» a subclases de la misma jerarquía, se asegura la equivalencia semántica de los mensajes que serán invocados de forma polimórfica. Por esta razón, en la programación orientada a objetos, el polimorfismo a veces se denomina «polimorfismo de subclase (o subtipo)».

En sumario, en la programación orientada a objetos, la fragancia del polimorfismo no se refiere a la cátedra o modelo de adonde provienen los objetos. Aun así, en lenguajes basados ​​en clases, es popular (y en algunos quizás la única circunstancia) que dichos objetos pertenezcan a subclases pertenecientes a la misma graduación. Por lo baza, el polimorfismo deuda estar como una circunstancia flexible de utilizar un tropel de objetos (como si fueran uno aria). Podría decirse que el polimorfismo se refiere esencialmente al posición de los objetos, no a su pertenencia a una graduación de clases (oa sus tipos de datos).

Esto se vuelve aún más aparente en los lenguajes de programación orientados a objetos basados ​​en prototipos, como Self, adonde las clases no existen.

Además, es enjundioso marcar que si un concertado tropel de objetos se puede disfrutar de circunstancia polimórfica es porque, en definitiva, todos ellos saben cómo contestar a un concertado noticia (o varios), sin embargo como estos mismos objetos generalmente contienen otros métodos (que otros objetos en ese tropel no contienen), es enrevesado afirmar simplemente que los objetos son polimórficos; es conveniente afirmar que estos objetos se pueden utilizar polimórficamente para un concertado cúmulo de mensajes.

Un excelencia. Podemos gestar dos clases diferentes: Pez Y Individuo heredan de la superclase Animal. Clase Animal tiene el lógica espiritual trenzar eso se implementa de guisa aparte en cada una de las subclases (los peces y las aves se mueven de guisa aparte). Entonces un tercer sensación puede expedir el noticia. trenzar a un tropel de objetos Pez Y Individuo a través de una posible de mención de cátedra Animalhaciendo así un uso polimórfico de dichos objetos con respecto al noticia trenzar.

El percepción de polimorfismo, desde una tratamiento más espiritual, se puede adscribirse baza a funciones como a tipos de datos. Así es como los conceptos de funciones polimórficas Y tipos polimórficos. Las primeras son aquellas funciones que pueden ser evaluadas o aplicadas a diferentes tipos de datos indistintamente; la tipos polimórficospor otro babor, son aquellos tipos de datos que contienen al a salvo un ambiente cuyo andoba no se especifica.

Clasificación

El polimorfismo se puede arrumbar en dos grandes clases:

  • polimorfismo inteligente (alguien polimorfismo paramétrico) es aquella en la que el constitución no incluye nadie andoba de delimitación sobre el andoba de datos sobre los que se trabaja. Por lo baza, se puede disfrutar para todo andoba de datos compatibles.
  • polimorfismo asombrado (alguien polimorfismo a propósito) es aquella en la que los tipos a los que se aplica el polimorfismo deben ser explícitos y declarados uno por uno de antemano de que puedan estar de moda.

El polimorfismo inteligente arrimado con la embajador es lo que a veces se conoce como programación genérica.

También se clasifica en embajador por eliminación de lógica espiritual y por impedimento de lógica. El instante se refiere al mismo lógica con diferentes parámetros.

Otra grado agrupa los polimorfismos en dos tipos: Ad hoc que a su vez incluye la impedimento y la coerción del cámara, Universal (inmersión o ponderado por embajador, paramétrico o genericidad).

excelencia de polimorfismo

En el posterior excelencia, usamos el argot C++ para esclarecer el polimorfismo. Nótese al mismo momento el uso de funciones virtuales puras, como se las conoce en C++, estas funciones constituyen una interfaz más consistente cuando se trabaja con una graduación de clases, ya que hacen rotativo el unión durante la cumplimiento. Sin secuestro, como verá, para que el polimorfismo funcione, no es una dominio obligatoria que todas las funciones en la cátedra fundamentos se declaren como virtuales.

486px Polimorfismo ES.svg

Diagrama de clases UML, que describe gráficamente la reseña entre la cátedra fundamentos Figura y sus capital clases derivadas, y la academia que utiliza esta cabestrillo: la Aplicación, asimismo identificada como el sensación Cliente.

#include<iostream>
#include <math.h>
using namespace std;

class Figura 
  private:
  float fundamentos;
  float altitud; 
  public:
 void captura();
 posible float perimetro()=;
 posible float area()=;
;

class Rectangulo: public Figura  
 public:
  void imprime();
  float perimetro()return 2*(fundamentos+altitud);
  float area()return fundamentos*altitud;
;

class Triangulo: public Figura 
 public:
  void acuse();
  float perimetro()return 2*sqrt(pow(altitud,2)+pow((fundamentos/2),2))+fundamentos; //Usando pitágoras
  float area()return (fundamentos*altitud)/2;
;

void Figura::captura()

 cout << "CALCULO DEL AREA Y PERIMETRO DE UN TRIANGULO ISÓSCELES Y UN RECTANGULO:" << endl;
 cout << "escribe la altura: ";
 cin >> altitud;
 cout << "escribe la base: ";
 cin >> fundamentos;
 cout << "EL PERIMETRO ES: " << perimetro() << endl;
 cout << "EL AREA ES: " << area() << endl;
getchar();
return ;

Polimorfismo de una interfaz

Aunque la tenacidad del polimorfismo no cambia, la circunstancia en que se aplica desde una interfaz puede ser un algo más oscura y enrevesado de captar. Se expone un excelencia simple comentado (en VB-NET) para captar cómo funciona adaptado desde una interfaz, anterior se escribe el constitución y después se comenta la algoritmo. Nota: para no empañar demasiado el constitución, todo lo que no se declara desprovisto se entiende presencia.

 ' Declaramos una interfaz amenaza IOperar y declaramos una concierto amenaza Operar 
  ' que implementarán las clases deseadas:
 Interface IOperar
 	Function Operar(valor1 As Integer, valor2 As Integer) As Long
 End Interface
 
  ' Declaramos una cátedra que trabaja más alejada del favorecido y que contendría funciones comunes
  ' para las posterior cátedra, si no fueran idénticas irían en la interfaz, 
  ' sin embargo al fortuna de delatar el polimorfismo se suponen idénticas:
  Class Operacion
	Function Calcular(clasellamante As Object) As Long
		' junto iría el constitución popular a todas las operaciones.... que llaman a esa concierto
		' por excelencia aproximar los 2 títulos de la algoritmo, examinar que están en el escalafón deseado, etc.

		' se supone que la concierto inputValor recoge un osadía de cierto retiro
		Dim valor1 As Integer = InputValor()
		Dim valor2 As Integer = InputValor()

		Dim op As IOperar = clasellamante
		Return op.Operar(valor1, valor2) 'AQUÍ es adonde se utiliza el polimorfismo.
	End Function

	Function InputValor() As Integer
		Dim resultado As Integer
		Do
			Console.WriteLine("Ingrese un número entero")
			' Ciclo eterno hasta analizar un impasible valioso
		Loop Until Int32.TryParse(Console.ReadLine(), resultado)
		Return resultado
	End Function
End Class
  ' Declaramos 2 clases: Sumar y Restar que implementan la interfaz y que llaman a la cátedra Operacion:
  Class Sumar 
  	Implements IOperar

  	Private Function Operar(valor1 As Integer, valor2 As Integer) As Long Implements IOperar.Operar
  		Return valor1 + valor2
  	End Function
 
  	Function Calcular() As Long
  		Dim op As New Operacion
  		Return op.Calcular(Me) ' se está llamando a la concierto 'Calcular' de la cátedra 'Operación'
  	End Function
  End Class
  ' segunda cátedra....
  Class Restar
  Implements IOperar
  	
	Private Function Operar(valor1 As Integer, valor2 As Integer) As Long Implements IOperar.Operar
  		Return valor1 - valor2
  	End Function
 
  	Function Calcular() As Long
    	Dim op As New Operacion
  		Return op.Calcular(Me) ' se está llamando a la concierto 'Calcular' de la cátedra 'Operación'
  	End Function
  End Class

Ahora analicemos el constitución para captar el polimorfismo destinado en la interfaz: La interfaz expone un lógica que puede ser implementado por las diferentes clases, generalmente relacionadas entre sí. Las clases Agregar Y Sustraer implementamos la interfaz sin embargo declaramos el lógica de interfaz como desprovisto para dosificar que se acceda autónomamente y asimismo tenemos un lógica llamado Calcular lo que brasa la cátedra Operación adonde tenemos otro lógica con el mismo nota. Es esta última cátedra la que realiza el polimorfismo y deuda achamparse tal como está a través de una ruego de la interfaz que brasa al lógica de algoritmo. La interfaz sabe a qué lógica de qué cátedra cristianar desde el años en que asignamos un osadía a la posible OP en el lógica Calcular de la cátedra Operaciónque a su vez recibió la mención del lógica Calcular de la cátedra que lo brasa, alguien que sea, se identifica, por céfiro de la mención yo alguien Este dependiendo del germanía aplicado. Cabe marcar que la ruego de la interfaz accede a sus métodos aunque sus clases se hayan ostensible privadas.

Diferencias entre polimorfismo y impedimento

El polimorfismo, como se acuse en el excelencia precedente, suele ser asaz beneficioso cuando se aplica desde interfaces, ya que permite gestar nuevos tipos sin corresponder que encarar clases existentes (supongamos que queremos anexar una cátedra Multiplicar), baste con recompilar todo el constitución que incluye los nuevos tipos añadidos. Si la impedimento se hubiera aplicado durante el boceto, sería urgente corregir la cátedra creada anteriormente al anexar la información algoritmo Multiplicarlo que asimismo podría cicatrizar verificar todo el constitución adonde se ruego la cátedra.

  • Un lógica está abigarrado si adentro de una cátedra hay dos o más declaraciones de ese lógica con el mismo nota sin embargo con diferentes parámetros, por lo que no deuda equivocarse con polimorfismo.
  • En sumario: la impedimento se resuelve en momento de sumario utilizando los nombres de los métodos y los tipos de sus parámetros; el polimorfismo se resuelve en momento de cumplimiento del apunte, es afirmar, mientras tanto se ejecuta, en concierto de la cátedra a la que pertenece el sensación.

Referencias

entrenamiento de representante
  • proyectos wikimedia
  • wd Datos: Q3240252
  • wd Datos: Q3240252


Obtenido de «https://es.wikipedia.org/w/index.php?title=Polymorphism_(informatics)&oldid=145812853»

Video sobre Que Es El Polimorfismo En Programacion Orientada A Objetos

¿Qué es el Polimorfismo? – Programación Orientada a Objetos

Pregunta sobre Que Es El Polimorfismo En Programacion Orientada A Objetos

Si tiene alguna pregunta sobre Que Es El Polimorfismo En Programacion Orientada A Objetos, háganoslo ciencia, ¡todas sus preguntas o sugerencias nos ayudarán a auxiliar en los siguientes existencias!

Mi grupo y yo compilamos el crónica Que Es El Polimorfismo En Programacion Orientada A Objetos a salir de muchas fuentes. Si encuentra utensilio el crónica Que Es El Polimorfismo En Programacion Orientada A Objetos, apoye al grupo. ¡Me gusta o comparte!

Calificar existencias Polimorfismo (informática) – Wikipedia, la enciclopedismo campechano

Calificación: 4-5 estrellas
Calificaciones: 4938
Vistas: 86893731

Buscar palabras gélido Que Es El Polimorfismo En Programacion Orientada A Objetos

Si te gusta mi cabida💻 invítame un café ☕
https://www.buymeacoffee.com/fredygeek/

Encuentra saliente video y más en:
https://www.fredygeek.com/post/qué-es-el-polimorfismo-poo

¿Qué es el Polimorfismo y porque es uno de los pilares fundamentales de la Programación Orientada a Objetos?

Visita mi Web

Inicio

Espero que te guste.

⭐⭐⭐ LIKE ⭐⭐⭐
⭐⭐ COMPARTE ⭐⭐
⭐⭐SUSCRIBETE⭐⭐
Que Es El Polimorfismo En Programacion Orientada A Objetos
guisa Que Es El Polimorfismo En Programacion Orientada A Objetos
tutorial Que Es El Polimorfismo En Programacion Orientada A Objetos
Que Es El Polimorfismo En Programacion Orientada A Objetos gratuitamente

Fuente: es.wikipedia.org

READ  Los Números De Teléfono Que Empiezan Por 900 Son Gratuitos último 2023