java, initialiser le sous-classe de super-classe

public class Base {
  //long list of attributes
  //no Constructor using fields
  //no init methode 
  //i cannot change this class
}

maintenant, j'ai étendu la Classe de Base comme:

public class subClass extends Base{
   private boolean selected;

   ...
   getter und setter
   ...
}

je deviens une liste d'objet de Base List<Base>

mais j'ai besoin de la même liste, mais comme List<SubClass>
est-il un moyen d'initialiser le sous-classe de la Classe de Base?

exemple:

for(Base b: list){
   SubClass sub = (SubClass)b; //Thats wrong i know
   if(...){
       sub.setSelected(true);
   }
   newList.add(sub);
}

j'essaie d'éviter le manuel de l'initialisation de chaque Attribut de la Base de Class à la sous-classe

- je mettre à jour ma Question, comme demandé dans les Commentaires:
le dessin ci-dessus est juste un exemple. ma QUESTIN EST EXACTEMENT:

pourquoi la conversion de BaseClass dans la sous-classe (sence Subclass extends BaseClass) n'est pas Possible? pourquoi Java dosn pas me permettre de faire ce qui suit:

exemple:

Class Base{
   private String name;
.....
}
Class SubClass extends Base{
   private String title;
}

puis

Base b = DBController.getById(...);
SubClass sub = (SubClass)b; 

après que l'Objet sub devrait avoir le Nom de l'Attribut de l'Objet b
et le title Attribut est nulle

pourquoi ce n'est pas le cas en java?

désolé pour mon mauvais anglais,
grâce

Initialiser le sous-classe de super-classe -- pourquoi? Cela sonne mal conçus, au mieux, et dangereux, au pire.
Où est le List<Base> champ défini? Dans le Base classe elle-même? Avez-vous le contrôle sur l'endroit où ses déclarée, et comment sa initialisé?
Je vous suggère fortement de regarder dans "préfèrent la Composition au cours de l'héritage"--google. Vous trouverez des discussions intéressantes sur la question. Je dis seulement ceci, parce qu'il semble que vous essayez désespérément de l'abus de ce privilège.
Comment pouvez-vous éviter le manuel de l'initialisation de la classe de Base des attributs si la Base n'a pas de constructeur ou une méthode d'initialisation? Êtes-vous en train d'essayer de convertir une classe de Base dans une Sous-classe?
oui @Jake, c'est exactement ce que je suis en train de faire

OriginalL'auteur Rami.Q | 2013-04-04