Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di gax80
    Registrato dal
    May 2006
    Messaggi
    631

    perchè this non può stare in un contesto statico??

    ciao ragazzi
    ho un problema con lo "static", in pratica il debug mi dà un problema sul this della seguente istruzione

    codice:
    tab.addMouseListener(this);
    perchè mi dice che non posso usare questo this in un contesto Static, naturalmente ho messo l'implements MouseListener, ma se provassi a cambiare gli altri static, dovrei cambiare tutto il codice...
    avreste una dritta???

    grazie
    quando il diavolo ti accarezza è perchè vuole la tua anima

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: perchè this non può stare in un contesto statico??

    Originariamente inviato da gax80
    codice:
    tab.addMouseListener(this);
    perchè mi dice che non posso usare questo this in un contesto Static, naturalmente ho messo l'implements MouseListener
    In un contesto static, il 'this' non esiste .... semplicemente perché non c'è una istanza corrente (un metodo static infatti non è associato ad alcuna istanza, appartiene alla classe).

    Quindi le cose sono due: o quella istruzione la metti in un metodo non statico (e deve essere definito nella classe che fa da listener) oppure passi al metodo statico il reference all'oggetto che fa da listener.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Ho scritto una breve recensione sull'argomento proprio la settimana scorsa: Il modificatore static. Prova a darci un'occhiata. Se poi ci sono dei punti "oscuri" puoi sempre farmeli notare.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it L'avatar di gax80
    Registrato dal
    May 2006
    Messaggi
    631
    è ottimo...ma è un tuo blog???
    se posso darti un consiglio..sarebbe bello se mettessi qualche esempio in +...ma secondo te come posso fare per rendere attivo il mouselistener in un contesto statico, cioè devo fare una classe a parte???
    quando il diavolo ti accarezza è perchè vuole la tua anima

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da gax80
    come posso fare per rendere attivo il mouselistener in un contesto statico, cioè devo fare una classe a parte???
    È inutile che fai questa domanda .... ti abbiamo già risposto sulla questione. La cosa è una sola: se vuoi aggiungere un listener ad un componente, devi passare un reference ad un oggetto che implementa l'interfaccia del listener. Punto. Come ottieni questo reference, dipende dal "design" delle tue classi.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it L'avatar di gax80
    Registrato dal
    May 2006
    Messaggi
    631
    capito capo
    grazie
    quando il diavolo ti accarezza è perchè vuole la tua anima

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.