Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/02/2014, 23:28
Avatar de Albuss
Albuss
 
Fecha de Ingreso: enero-2012
Ubicación: Coruña
Mensajes: 475
Antigüedad: 12 años, 9 meses
Puntos: 30
Polimorfismo en Javascript : ¿como tratarlo?

Buenas caballeros!

De seguido junto al post de como Crear Prototipos Abstractos y funciones Virtuales en Javascript?.
Creo un nuevo post para ver como tratar el polimorfismo en Js, esta vez tratando un supuesto , que es el siguiente : http://w3processing.com/index.php?subMenuItemId=329

Hay exponen un "supuesto" de como tratar un método polimorficamente en Javascript, aquí el código que ellos exponen :



Código Javascript:
Ver original
  1. function Person(age, weight) {
  2.     this.age=age;
  3.     this.weight=weight;
  4.     this.getInfo=function() {
  5.       return "I am " + this.age + " years old " +
  6.         "and weighs " + this.weight +" kilo.";
  7.     }
  8.   }
  9.  
  10.   function Employee(age, weight, salary){
  11.     this.salary=salary;
  12.     this.age=age;
  13.     this.weight=weight;
  14.     this.getInfo=function() {
  15.       return "I am " + this.age + " years old " +
  16.         "and weighs " + this.weight +" kilo " +
  17.         "and earns " + this.salary + " dollar.";
  18.     }
  19.   }
  20.  
  21.   Employee.prototype= new Person();
  22.   Employee.prototype.constructor=Employee;
  23. // The argument, 'obj', can be of any kind
  24. // which method, getInfo(), to be executed depend on the object
  25. // that 'obj' refer to.
  26.   function showInfo(obj) {
  27.     document.write(obj.getInfo()+"<br>");
  28.   }
  29.  
  30.   var person = new Person(50,90);
  31.   var employee = new Employee(43,80,50000);
  32.   showInfo(person);
  33.   showInfo(employee);

Dado el siguiente Supuesto y habiéndolo ejecutado, pregunto ¿realmente no están sobrescribiendo el método padre ? , yo no veo polimorfismo por ningún lado. Si la respuesta a mi pregunta es negativa, por favor, explicadme donde está el uso del polimorfismo en ese código.

De ser afirmativa, que alguien pueda tratar un ejemplo verdadero de polimorfismo y explicarlo. Gracias.