Injection d'interface

omarou -  
KX Messages postés 19031 Statut Modérateur -
Bonjour,

Voilà ce que je veux réaliser :

J'ai une classe A et une classe B ainsi qu'une interface I.

B implements I.

Dans la classe A j'ai déclarer un objet comme ceci :

private I i;

A ce stade tout est ordinaire.

Le problème c'est que je veux utiliser les services de l'objet i implémentées par la classe B sans utiliser aucun framework de gestion d'injection de dépendance Spring, EJB, ....

J'utilise Eclipse RCP et de code java bien sur.

Quelqu'un ait une idée !!??!!

A voir également:

2 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
"sans utiliser aucun framework de gestion d'injection de dépendance Spring, EJB, ...."

Je ne vois pas du tout ce que tu voudrais faire avec ça !

Si tu veux utiliser un objet qui implémente l'interface I, il suffit d'utiliser les méthodes définies par cette interface !
0
omarou
 
Bonjour, Je vous remercie pour votre réponse.
Je m'explique d'avantage :
prenant le schéma suivant :

public interface I
{
public void saluer();
}

public class B implements I
{
@Override
public void saluer(){
printf("dit : salut");
}
}

public class A
{
private I itest; // Je ne veux pas faire itest = new B();

public void main()
{
System.out.println(itest.saluer()); //J'attends ici le message : dit salut
//Est ce qu'il y a moyen d'appeler la méthode saluer() de la classe B.
//Injecter l'interface I à la classe B
}
}

Voilà j'espère que j'ai éclairci un peu plus l'ambiguïté !!
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Pour faire ce que tu veux il faudrait que la méthode saluer() soit static, mais elle devrait alors être implémentée ce qui n'est pas possible avec une interface !
0