FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ocultamiento de método heredado
Hola!
Tengo creada una cierta jerarquía de clases. Hay una subclase que pertenece a mi jerarquia, porque necesita heredar todo de su clase padre, pero solo con una diferencia. Hay un método de su clase padre que no quiero que herede, dicho método es público, ¿puedo ocultarlo de alguna manera? Al momento como para salir del paso, lo estoy reintroduciendo pero dentro no hace nada, me gustaria hacer algo más prolijo... muchas gracias Gabriel |
#2
|
||||
|
||||
Cita:
¿Qué significa ocultarlo? ¿Dónque quieres que no salga? La única opción que le veo es la que estás implementando.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
||||
|
||||
La única manera es que el método en la clase padre lo hagas privado.
puesto que recuerda que cuando heredas, el objeto toma las características del padre, y si ese método es público, pues lo estarás heredando. Tengo entendido que en java y .Net puedes especificar métodos no heredables, pero en delphi tengo entendido que no es algo que tengamos implementado. suerte
__________________
Conoce mi blog http://www.edgartec.com |
#4
|
||||
|
||||
mmmm... tal vez... si....
Hola supermilloriver,
De acuerdo a tu jerarquía ¿Existen otras potenciales clases que obedezcan este comportamiento? ¿Son demasiadas? las respuestas a estas dos preguntas son afirmativas... se podría tratar de un error en el diseño. Lo mejor sería replantear la jerarquía y desarrollar clases del modo tal que los que tengan los métodos/propiedades a heredar por un lado y los que sabes que no van a heredarse por otro lado. O también, que sería más recomendable... buscar un término intermedio entre la jerarquía que tienes y esta opción. Esto no entiendo: Cita:
Otra opción sería que a ese método lo declares como virtual y abstracto y en la clase hijo simplemente al declararlo lo dejas vacio. Cita:
Yo optaría por tratar de redefinir la jerarquía, pero no cambiar el método a privado. Saludos, |
#5
|
||||
|
||||
¡Hola a todos!
Cita:
Gabriel: ¿por qué no nos muestras esas clases, o por lo menos una parte de ellas, para entender mejor el problema que planteas? Un abrazo oculto. Al González. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
TToolbar heredado y posición de nuevos TToolButtons | oliverinf | OOP | 4 | 06-07-2015 22:18:21 |
Problemas con un componente "botón" heredado de TCustomControl | pascalutn2003 | Varios | 4 | 31-08-2006 01:08:21 |
Metodo locate | fefe13 | Conexión con bases de datos | 3 | 06-11-2005 13:09:22 |
Los eventos y un componente heredado de TGraphicControl | zuriel_zrf | OOP | 1 | 01-10-2004 00:55:32 |
¿Cómo puedo llamar al método heredado de una clase que no es el ancestro directo? | sarackganda | OOP | 4 | 15-12-2003 22:19:49 |
|