Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1696 connectés 

 


Dernière réponse
Sujet : [JAVA] initialisation entre classes d'une meme hierarchie
benou la question c'est : que devienne les attributs qui ne sont pas communs à A et B ?
 
et puis c'est pas très beau qu'une classe (B) connaisse les classes qui héritent d'elles (B)... il faudrait peut-être que tu repense tes classes.

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
benou la question c'est : que devienne les attributs qui ne sont pas communs à A et B ?
 
et puis c'est pas très beau qu'une classe (B) connaisse les classes qui héritent d'elles (B)... il faudrait peut-être que tu repense tes classes.
iskream

maphi a écrit a écrit :

Bonjour a tous,
 
Est-ce qqn à une reponse à ce pb :
 
Soit deux classes A et B dont l'une est sous classe de l'autre
Ex :
public class B{
  protected String s;
  ...
}
 
public class A extends B{
  private int i;
  ...
}
 
j'aimerai initialiser une instance de la classe A a partir d'une instance de la classe B.
 
 
Ex :
 B b = new B("toto" );
 A a = new A(b);//a.s = toto
 
 
 
 le but etant que tous les attributs communs à a et b aient la meme valeur.
En fait j'aimerai obtenir le meme resultat que la commande
a = (A)b; mais ce, ca ne marche evidemment pas...
 
Tank iou.  




 
Qu'est ce qui ne marche pas ? le cast a=(A)b ???
 
Dans la solution que tu évoques :
A a = new A(b);
le seul moyen que je vois pour qu'un tel truc fonctionne, serait de faire la copie 1 à 1 des propriétés communes dans ton constructeur.

maphi Bonjour a tous,
 
Est-ce qqn à une reponse à ce pb :
 
Soit deux classes A et B dont l'une est sous classe de l'autre
Ex :
public class B{
  protected String s;
  ...
}
 
public class A extends B{
  private int i;
  ...
}
 
j'aimerai initialiser une instance de la classe A a partir d'une instance de la classe B.
 
 
Ex :
 B b = new B("toto" );
 A a = new A(b);//a.s = toto
 
 
 
 le but etant que tous les attributs communs à a et b aient la meme valeur.
En fait j'aimerai obtenir le meme resultat que la commande
a = (A)b; mais ce, ca ne marche evidemment pas...
 
Tank iou.

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)