public void addComponente(Componente componente){
if(componentes.size() == 4);
else if(componentes.size() == 0) componentes.add(componente);
else{
for(int x = 0; x < componentes.size(); x++){
if(componentes.get(x) instanceof componente)
}
}
}
Componente é uma interface e existem somente 4 classes quem implementam ela
essa função não deve permitir que seja inserido classe repetida na lista componentes.
Pensei no instance of mas não to conseguindo usar.
É com instanceof vai retorar sempre true, uma alternativa seria você incluir um método na interface e implementá-lo em cada classe, para identificar de qual subtipo ela é.
De forma rápida foi a solução que imaginei.