Hola. tengo una duda...
Tengo dos clases (para la capa de datos). Una abstracta (ClaseA) y la que
hereda de ella (ClaseB).
Ahora mi duda es la siguiente.
En esta aplicacion que tngo, que la estoy estudiando, veo que NUNCA se crean
instancias de ClaseB, sino de ClaseA mediante un metodo que retorna un
objeto de su mismo tipo ClaseA. Hasta donde yo sabia, las clases abstractas
no se podian instanciar. Pero esto rompe con lo que tenia yo en mi mente.
Por ejemplo. Analicen el escenario.
Clase Usuarios (esta pertenece al BussinessLayer o Reglas de Negocio)
la clase Usuarios tiene un metodo que es TraerUsuarios.
Seria asi como
class Usuarios
{
public static TraerUsuario
{
ClaseA xx=ClaseA.CrearInstancia(); // <-- Se crea la "instancia"
de la clase abstracta.
xx.TraerUsuario(int ID) <-- Un metodo abstracto en ClaseA,
override en ClaseB.
}
}
La historia de esto es que nunca veo que se llame a ClaseB en ningun
momento, que es la que contiene todos los override de los metodos abstractos
de ClaseA. Estoy conundido. Alguien sabe como funciona esto?
saludos
Leer las respuestas