Ver Mensaje Individual
  #21 (permalink)  
Antiguo 22/05/2011, 20:23
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: Dudas básicas en python

Cita:
Iniciado por rafuru Ver Mensaje
Código Python:
Ver original
  1. def hola (nombre="", edad=0):
  2.     print "hola",nombre
  3.     print "hola",nombre," tienes ",edad,"a;os"
  4.    
  5. def main():
  6.     hola()
  7.     hola("test")
  8.     hola("rafael",21)
  9.    
  10. main()

A lo que voy..

Si yo quiero un metodo que me reciba únicamente el nombre.. o únicamente la edad o el nombre y la edad...
Creo que entonces ahi la sobrecarga no es posible.. o si?
¿Tu crees?
Código Python:
Ver original
  1. def main():
  2.     hola()
  3.     hola("test")
  4.     hola("rafael",21)
  5.     hola(edad=21) #Solo edad

Como ya te dije también tenemos Duck Typing
Código Python:
Ver original
  1. def suma(a, b):
  2.     return a + b
  3.  
  4. print suma(1, 2)
  5. print suma(1, 3.0)
  6. print suma("aa", "bb")
  7. print suma([1, 2], [3, 4])
Funciona con varios tipos de datos, inclusive si no son del mismo tipo. ¿Cuantas sobre cargas tendrías que hacer para soportar algo así en Java?