Según tengo entendido, es posible anular un método (marcado como Virtual
) en una clase base de una clase derivada utilizando las palabras clave override
.C# - ¿Es posible reemplazar un método en una clase base dentro de la misma clase (NO una clase derivada)?
¿Pero qué hay sobre anulando un método en la misma clase?
En mi caso específico tengo una clase x
con 2 métodos. El método a
tiene un comportamiento común con b
, y b
agrega funcionalidad al método a
.
En el pasado he duplicado el código de a
en b
y he agregado la nueva funcionalidad en b
.
Me gustaría saber si hay un mejor enfoque para poder centralizar el comportamiento del método a
.
public class x
{
public static void a() {}
public static void b() {}
}
Gracias por su tiempo :-)!
Gracias Merlyn para yuor comentario, hasta votado en su mensaje .. era útil para la comprensión de mis gracias – GibboK
@GibboK: También es posible que desee comprobar hacia fuera el libro : Estructura e Interpretación de Programas de Computadora. Su objetivo principal es enseñarle cómo factorizar el código. Utiliza Lisp, pero cada concepto que enseña es directamente aplicable a cualquier lenguaje moderno. El libro también se distribuye libremente en la web. http://mitpress.mit.edu/sicp/full-text/book/book.html. También hay una serie de videos de acceso gratuito en la web con (más o menos) el mismo contenido. –