| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Cita: si te entiendo pero cual es la diferencia, ya que se me hace que es lo mismo y si tienes un ejemplito en código mejor para ver la diferencia
Iniciado por Fuzzylog Eso es como decir que todos los animales son insectos sólo porque todos los insectos son animales (una burrada vamos). De hecho ni siquiera es necesario la sobreescritura para el polimorfismo estrictamente. Solo con tener dos clases diferentes con el mismo método se consideraría que es polimorfismo, aunque lo normal es que tengan alguna relación entre ellas y sobreescriban un método (por herencia, interfaces, etc). gracias |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Hola: Van muy ligados, pero no es exactamente lo mismo. Sobreescribir un metodo es hacer una clase hija que tenga un método igual que el de la clase padre, pero con otro código. Con una clase hija que sobreescriba un método puedes usar o no polimorfismo. El polimorfismo lo usas cuando metes una clase hija en una variable del tipo de la padre y llamas al método en cuestión. Aunque el tipo es de la clase padre, se llama al método de la clase hija. La diferencia es la misma que entre escribir un método y llamarlo. Que sobreescribas un método no quiere decir que luego vayas a usarlo con polimorfismo después. Se bueno. |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Hola: De forma general se puede decir q el polimorfismo es la capacidad de, utilizando el mismo código, ejecutar operaciones en objetos de diferentes tipos. En java la sobre escritura de métodos es una de las formas de crear polimorfismo. Pero no es la única, ni java es el único lenguaje q soporta polimorfismo. Ejemplos de polimorfismo (algunos soportados por java, otros no) también son: - Sobrecarga de métodos (métodos de igual nombre pero con parámetros diferentes)
Código Java:
- Sobrecarga de operadores. Aquí no estás sobre escribiendo nada ya que no hay herencia.Ver original - La genericidad es también un tipo de polimorfismo. - Algunos lenguajes soportan polimorfismo sin herencia. Ver duck typing y tienes cosas un poco más "raras" como: - Type classes de haskell como ves el polimorfismo es un concepto q es implementado en diferentes lenguajes de formas muy distintas, mientras q la sobre escritura es solamente una de esas formas en q se implementa. slds; nup_ |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Cita: no te entendí muy bien
Iniciado por nup_ Hola: De forma general se puede decir q el polimorfismo es la capacidad de, utilizando el mismo código, ejecutar operaciones en objetos de diferentes tipos. En java la sobre escritura de métodos es una de las formas de crear polimorfismo. Pero no es la única, ni java es el único lenguaje q soporta polimorfismo. Ejemplos de polimorfismo (algunos soportados por java, otros no) también son: - Sobrecarga de métodos (métodos de igual nombre pero con parámetros diferentes)
Código Java:
- Sobrecarga de operadores. Aquí no estás sobre escribiendo nada ya que no hay herencia.Ver original - La genericidad es también un tipo de polimorfismo. - Algunos lenguajes soportan polimorfismo sin herencia. Ver duck typing y tienes cosas un poco más "raras" como: - Type classes de haskell como ves el polimorfismo es un concepto q es implementado en diferentes lenguajes de formas muy distintas, mientras q la sobre escritura es solamente una de esas formas en q se implementa. slds; nup_ cuando usar la sobre escritura y cuando el polimorfismo dar unos ejemplos sencillos con código mil gracias y disculpa |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Cita: me podrías dar unos ejemplito en código para que pudiera ayudar
Iniciado por chuidiang Hola: Van muy ligados, pero no es exactamente lo mismo. Sobreescribir un metodo es hacer una clase hija que tenga un método igual que el de la clase padre, pero con otro código. Con una clase hija que sobreescriba un método puedes usar o no polimorfismo. El polimorfismo lo usas cuando metes una clase hija en una variable del tipo de la padre y llamas al método en cuestión. Aunque el tipo es de la clase padre, se llama al método de la clase hija. La diferencia es la misma que entre escribir un método y llamarlo. Que sobreescribas un método no quiere decir que luego vayas a usarlo con polimorfismo después. Se bueno. para entender que es polimorfismo y sobre escritura de métodos |
| |||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo A mi entender, el polimorfismo se refiere a que puedes tener definido varias veces el mismo metodo pero con diferentes parametros de entrada, cada metodo aunque se llame igual puede hacer cosas completamente diferentes ya dentro del codigo, por ejemplo: metodo: aplicarColor() aplicarColor(objeto Vehiculo, nombre del color) internamente el metodo colorea el vehiculo aplicarColor(objeto Triangulo, borde, relleno, codigo de color) internamente aplica el color a los bordes o lo rellena aplicarColor(objeto texto) le aplica un color a la letra seleccionada |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Cita: pero esto no es una sobre carga de metodos
Iniciado por wwwmaster A mi entender, el polimorfismo se refiere a que puedes tener definido varias veces el mismo metodo pero con diferentes parametros de entrada, cada metodo aunque se llame igual puede hacer cosas completamente diferentes ya dentro del codigo, por ejemplo: metodo: aplicarColor() aplicarColor(objeto Vehiculo, nombre del color) internamente el metodo colorea el vehiculo aplicarColor(objeto Triangulo, borde, relleno, codigo de color) internamente aplica el color a los bordes o lo rellena aplicarColor(objeto texto) le aplica un color a la letra seleccionada |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Hola: sobrecarga: en una misma clase, métodos con el mismo nombre y diferentes parámetros. No tiene nada que ver con pòlimorfismo ni sobreescritura. sobreescribir: clase hija con exactamente el mismo método que su clase padre, aunque con código distinto. polimorfismo. Usar la sobreescritura llamando a un método en una variable de tipo padre que realmente llama al metodo de la clase hija.
Código Java:
Ver original Se bueno. |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Cita: no había visto un ejemplo tan genial como esto
Iniciado por chuidiang Hola: sobrecarga: en una misma clase, métodos con el mismo nombre y diferentes parámetros. No tiene nada que ver con pòlimorfismo ni sobreescritura. sobreescribir: clase hija con exactamente el mismo método que su clase padre, aunque con código distinto. polimorfismo. Usar la sobreescritura llamando a un método en una variable de tipo padre que realmente llama al metodo de la clase hija.
Código Java:
Ver original Se bueno. |
| |||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo En este articulo unen ambos conceptos: polimorfismo y sobrecarga: http://apdaza-poo.blogspot.mx/2008/04/polimorfismo.html |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Cita: una observación no pregunte por sobrecarga sino por sobre escritura y polimorfismo
Iniciado por wwwmaster En este articulo unen ambos conceptos: polimorfismo y sobrecarga: http://apdaza-poo.blogspot.mx/2008/04/polimorfismo.html aunque esta genial mil gracias |
| ||||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo una pregunta es cierto que el polimorfismo se puede establecer mediante la sobrecarga, sobre-escritura y la ligadura dinámica ya que dicen que polimorfismo es diferente a sobre carga etc |
| |||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo Tengo entendido que Java no soporta la sobrecarga de operadores. Última edición por juanbimbaperez; 08/05/2014 a las 15:12 |
| |||
Respuesta: cual es la diferencia entre sobre escritura de métodos y polimorfismo class Abuela{ void queEres(){ System.out.println("Soy Madre"); } } class Madre extends Abuela{ void queEres(){ System.out.println("Soy hija y"); super.queEres(); } } class Hija extends Madre{ void queEres(){ System.out.println("Soy hija"); } } class Padre{ void queEres(){ System.out.println("Soy Padre"); } } En algún otro sitio... Abuela Alice = new Abuela(); Madre Mirian = new Madre(); Hija Alicia = new Hija(); Padre Bob = new Padre(); System.out.println("Alice:"); Alice.queEres(); System.out.println("Mirian:"); Mirian.queEres(); System.out.println("Alicia:"); Alicia.queEres(); System.out.println("Bob:"); Bob.queEres(); El método (queEres) se comporta de múltiples formas, por tanto se ha implementado el polimorfismo a través de la sobre escritura de los métodos. Por tanto regresando a la pregunta original. No puede haber diferencias entre ambos pues a través de uno se implementa el otro. Es decir el polimorfismo puede lograr mediante la sobre escritura de los métodos. Y como ya se dijo también mediante interfaces. Noten que aquí la clase Padre no guarda una relación de parentesco de forma explicita con las clases Abuela, Madre e Hija. Claro que pude haber escrito: Abuela Alice = new Abuela(); Abuela Mirian = new Madre(); Abuela Alicia = new Hija(); Padre Bob = new Padre(); System.out.println("Alice:"); Alice.queEres(); System.out.println("Mirian:"); Mirian.queEres(); System.out.println("Alicia:"); Alicia.queEres(); System.out.println("Bob:"); Bob.queEres(); De acuerdo a Wikipedia "El único requisito que deben cumplir los objetos que se utilizan de manera polimórfica es saber responder al mensaje que se les envía." Que me dicen. Última edición por juanbimbaperez; 08/05/2014 a las 20:25 |
Etiquetas: |