Autor
|
Tema: Duda: reemplazar sobrecarga de métodos (Leído 1,947 veces)
|
HastatusXXI
Desconectado
Mensajes: 8
|
Hola.
He hecho una clase para la estructura de datos Trie en Python y tengo un método recursivo que se llama addWord que tiene como argumentos la palabra que se quiere introducir, la subpalabra que se ha generado hasta el momento en cada llamada y el nodo actual. Me gustaría que el usuario pudiera utilizar el método con un solo argumento (la palabra a introducir), ya que los otros dos son consecuencia del algoritmo y la recursividad, de modo que el usuario no necesita conocerlos. En Java, por ejemplo, utilizaría la sobrecarga de métodos y el método addWord que he descrito sería privado y crearía otro con el mismo nombre, público y con la palabra a añadir como único argumento (creo que es el enfoque correcto, corregidme si me equivoco) ¿Hay alguna forma de hacer algo parecido en Python? ¿Cómo se procede en estos casos con este lenguaje?
(La solución obvia sería crear otro método en la clase con el argumento palabra y un nombre diferente, pero me gustaría saber si hay otro modo).
|
|
|
En línea
|
|
|
|
Serapis
|
Cuando un método ha de ser público y otro privado, carece de sentido sobrecargar un método, dale al privado el nombre que te dé la gana y listo...
La sobrecarga sólo tiene sentido, cuando todos esos métodos son públicos y por tanto se permite al que use la librería elegir la sobrecarga que mejor le vaya ...en cada ocasión... Si un método es privado, entonces el usuario que lo use, "ni fú ni fá", no tiene acceso, no lo ve, no puede elegir, carece de sentido que sea una sobrecarga.
Si tu método público se llama AddWord, el privado podría llamarse AddWord0, AddWordPriv, AddWordX, etc...
|
|
|
En línea
|
|
|
|
HastatusXXI
Desconectado
Mensajes: 8
|
Cuando un método ha de ser público y otro privado, carece de sentido sobrecargar un método, dale al privado el nombre que te dé la gana y listo...
La sobrecarga sólo tiene sentido, cuando todos esos métodos son públicos y por tanto se permite al que use la librería elegir la sobrecarga que mejor le vaya ...en cada ocasión... Si un método es privado, entonces el usuario que lo use, "ni fú ni fá", no tiene acceso, no lo ve, no puede elegir, carece de sentido que sea una sobrecarga.
Si tu método público se llama AddWord, el privado podría llamarse AddWord0, AddWordPriv, AddWordX, etc...
Entendido. Gracias por la aclaración.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
usando sobrecarga de metodos
Java
|
Rijhording
|
3
|
3,604
|
28 Abril 2010, 00:09 am
por shug0
|
|
|
Sobrecarga de Metodos parte2(Ayuda)
Java
|
Rijhording
|
6
|
3,983
|
3 Mayo 2010, 17:08 pm
por Rijhording
|
|
|
Sobrecarga de Metodos parte2(Ayuda-I)
Java
|
Rijhording
|
0
|
2,090
|
3 Mayo 2010, 18:24 pm
por Rijhording
|
|
|
sobrecarga de metodos, se puede aplicar en metodos abstract o interfaces?
Desarrollo Web
|
jhonatanAsm
|
0
|
3,173
|
16 Agosto 2011, 00:22 am
por jhonatanAsm
|
|
|
como puedo aplicar la sobrecarga de metodos
Programación C/C++
|
AprendizPRG
|
1
|
3,212
|
4 Junio 2012, 09:43 am
por Saberuneko
|
|