public class Mdl {
private int i;
public class myAction implements ActionListener {
public void actionPerformed(ActionEvent actionEvent) {
xxxxx
}
Voici un exemple et j'aimerai pourvoir accéder dans le bloc 'xxxx' à la variable i .
Merci.
public class Mdl {
private int i;
public class myAction implements ActionListener {
public void actionPerformed(ActionEvent actionEvent) {
xxxxx
}
Voici un exemple et j'aimerai pourvoir accéder dans le bloc 'xxxx' à la variable i .
Merci.
Tu peux y acceder en mettant i en protected ou public
si tu ne déclare pas de "i" dans ton bloc 'xxxx' tu peux même directement utiliser "i" telquel. Sinon, pour faire appel à un attribut de ta classe, comme le fait remarquer ®om, tu peux utiliser this.ta_variable. This représente l'instance de classe (objet) dans lequel tu es. Sinon je ne vois pas le rapport avec le titre ??
Le rapport je pense c'est qu'ici c'est un cas particulier où tu es dans une classe interne et que tu veux accéder à un attribut de la classe englobante (pas vraiment parente, mais c'est l'idée).Envoyé par trax44
oups j'avais pas bien lu.
Mais c'est pas désigné comme "crade" de faire ce genre de chose ?
Pour l'implantation des contrôleurs (une classe qui implémente les Listeners), c'est pour moi la seule méthode correcte (mis à part que dans l'exemple elle devrait être private, et que myAction devrait prendre une majuscule au début).Envoyé par trax44
(je parlais pour le fait d'utiliser une classe interne)
Sinon pour l'accès à un attribut de la classe englobante, c'est parfois nécessaire, il faut simplement faire attention aux accès concurrents.
Partager