Rechercher : dans
Par :

Comment instancier une sous-classe en Java?

Dernière réponse le 17 mar 2008 à 08:59:52 Yakurena, le 5 fév 2005 à 19:32:17 
 Signaler ce message aux modérateurs

Bonsoir,
Je voudrais savoir comment instancier une sous-classe en Java.
Par exemple,si on a 2 classes imbriquées l'une dans l'autre(disons A et B) :

class A
{ ..............

class B // imbriquée dans A
{ .............
}
}

Est-il possible d'instancier B en tant que composante de A? C'est-à-dire d'instancier d'abord A,puis B en tant qu'attribut de l'instance précedente? Avec une syntaxe du genre :
A a = new A();
B b = A.(new B());
(J'ai essayé avec cette syntaxe exacte,mais ça ne marche pas)

Sinon,je sais qu'on peut aussi instancier B en une instruction avec la syntaxe :
B b = (new A()).new B();
mais le problème est qu'alors,on ne récupère que l'instance de la sous-classe B et on perd celle de la classe A. Or je dois(après les instanciations),manipuler les instances des 2 classes.
Qqn pourrait-il résoudre mon problème??
Merci d'avance.

Meilleures réponses pour « Comment instancier une sous classe en Java? » dans :
Les classes Java Voir La notion d'objet Le langage Java intègre fortement le concept objet, il s'agit donc d'un langage orienté objet (LOO). Le terme langage orienté objet est plus qu'une simple appellation de plus pour désigner un type de langage, il...
Java - Les types de données VoirLes primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...
Java - Les packages VoirIntroduction aux packages La programmation Java consiste à créer des classes. Or, étant donné qu'un programme est généralement développé par une équipe de programmeurs, c'est-à-dire plusieurs personnes, le fait de concaténer (mettre bout à bout)...
Java - Les objets VoirLa création d'objets Un objet est une instance de classe, la création d'objets s'appelle donc l'instanciation. Cette instanciation se fait grâce à l'opérateur new suivi du nom de la classe à instancier et de parenthèses contenant les paramètres...

1

alconis, le 5 fév 2005 à 21:25:30
  • +1

Un simple :

B b = new B()

suffira à ton bonheur.

Répondre à alconis

2

choubaka, le 6 fév 2005 à 13:08:25

Salut

Je trouve cette manière de programmer un peu "exotique", mais bon ...

il suffit de créer dans la classe A une méthode statique qui te renverra l'instance de la classe B, la méthode statique ne nécessitant pas d'instanciation de la classe qui en dispose.

public static B getClassB(){
               
              B b = new B();
               
              return b;

}
--


pour récupérer l'instance de la classe B, il suffit de faire appel à la méthode de A dans le code.


B instanceB = A.getClassB();



Chouba,
Pochard d'assaut .. 

Répondre à choubaka

3

abd1935, le 14 mar 2008 à 09:37:07

Bonjour,
pourriez vous me dire comment instancier une classe en java et c'est quoi le principe et l'interet.
merci d'avance

Répondre à abd1935

4

 choubaka, le 17 mar 2008 à 08:59:52

Salut

c'est expliqué ici, brièvement

http://www.commentcamarche.net/poo/classe instance.php3

Chouba,
Pochard d'assaut .. 

Répondre à choubaka
Collection CommentÇaMarche.net