fala ae,
pessoal, eu tenho que fazer uma classe que se chama “Modelo” e outras duas classes filhas dela que são: “ModeloTipoA” e “ModeloTipoB”.
e dentro de outra classe eu tenho um array da classe Modelo: Modelo modelos [] = new Modelo [100];
ae eu tenho que ter um metodo que busca uma propriedade que é exclusiva dos moodelos do tipo A… sendo que na classe Modelo tem o metodo isTipoA() e isTipoB() para eu verificar qual é qual…
entao eu to pensando em fazer algo desse tipo:
public void getTipoA (String propriedadeModelosA[])
{
int n = this.modelos.length;
int j = 0;
for (int i=0;i<n;i++)
{
if (modelos[i].isTipoA())
{
// esse modelos[i] é do tipo Modelo, que eh a classe mae da classe ModeloTipoA
ModeloTipoA modelo = (ModeloTipoA) modelos[i];
// o metodo getPropriedade() só existe dentro da classe ModeloTipoA
propriedadeModelosTipoA[j] = modelo.getPropriedade();
j++;
}
}
}
minha duvida eh:
quando eu faço a conversao de tipo: ModeloTipoA modelo = (ModeloTipoA) modelos[i];
, as propriedades que sao exclusivas da classe ModeloTipoA ficam diponiveis nesse objeto modelo ou quando eu jogo o objeto da classe ModeloTipoA num array do tipo Modelo ela perde as caracteristicas de classe filha?
deu pra entender?
eu queria saber se isso funcionaria…
vlw