|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#121 |
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
Beh, swing alla fine è stato messo a posto, non è che sia poi così lento oggi (uso swing come esempio, ci sono altre parti che sono state pesantemente riviste, tipo il nuovo sistema di gestione dei flussi input/output "nio" ).
Per quanto riguarda il tempo di avvio è certamente vero che il caricamento delle classi sia un processo "lungo", tuttavia è anche vero che lo stesso processo è distribuibile all'interno dell'applicazione (a patto, naturalmente, che le classi da caricare non siano tutte necessaria nel costruttore della classe di partenza) Per i curiosi, qui è disponibile on-line un libro che mostra, tra l'altro, alcune tecniche di ottimizzazione delle prestazioni in esecuzione di programmi Java. http://java.sun.com/docs/books/perfo...PTitle.fm.html |
|
|
|
|
|
#122 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
Quote:
giusta la tua osservazione sulla distribuzione del carico "posticipando" la creazione degli oggetti quando possibile, anche se non sempre si riesce infine grazie per il link, mi mancava |
|
|
|
|
|
|
#123 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
mah, se desidero prestazioni mi rivolgo al buon vecchio "C"
cmq, java lo trovo parecchio interessante |
|
|
|
|
|
#124 | ||
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
Quote:
Quote:
ma non cederò a queste frecciatine |
||
|
|
|
|
|
#125 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
Quote:
e io se voglio prestazionio mi rivolgo al giurassico assembly e non se ne parli più! |
|
|
|
|
|
|
#126 | |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
Quote:
nono, è un semplice dato di fatto meglio il "C" |
|
|
|
|
|
|
#127 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
Quote:
cmq sai che dopo tanta programmazione Java faccio fatica con il c? ormai sono assuefatto alla programmazione a oggetti |
|
|
|
|
|
|
#128 | |
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
Quote:
|
|
|
|
|
|
|
#129 | |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
Quote:
scherzi a parte, se devi scrivere un programma di elaborazione video anche il VB è più indicato cmq, a parte i gusti personali java non dispiace neppure a me recoil ho letto la tua definizione sul "record di attivazione" e mi è molto piaciuta; sai fare altrettanto per le interfacce ? io riassumendo penso che siano un mezzo escogitato da sun per permettere la multi ereditarietà di una sottoclasse: o no ? mi pare che il C++ possegga la multi ereditarietà |
|
|
|
|
|
|
#130 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
mi è stata già chiesta una definizione di interfaccia e trovo che non sia molto semplice darla.
allo stesso tempo non è facile capire il perché dell'esistenza delle interfacce. l'ereditarietà è un concetto intuitivo e se ne capisce subito l'utilità: ereditando una classe ne eredito i metodi e quindi posso estendere le funzionalità aggiungendone di nuovi. con l'interfaccia si ereditano delle costanti, niente di più. allora perché è utile un'interfaccia? per consentire l'ereditarietà multipla, che in Java non è implementata. tuttavia se non ho codice che cosa eredito? eredito il "tipo". ti faccio un esempio: se la tua classe Cane implementa l'interfaccia Animale allora una istanza di Cane potrà essere assegnata a una variabile di tipo Animale. questo a che serve? continuiamo l'esempio l'interfaccia Animale ha un metodo chiamato nutri. Cane ha la propria implementazione di nutri() che può essere diversa da quella degli altri animali ma se in qualche altra classe (ad esempio la classe Zoo) ho bisogno di chiamare il metodo nutri() su una bestia qualsiasi posso farlo tramite una istanza di Animale pur facendo riferimento al cane o al gatto proprio perché ho implementato l'interfaccia. forse l'esempio è stupido ma spero che chiarisca le idee. le interfacce si trovano molto spesso e un uso abbastanza ricorrente è quello di utilizzarle per implementare degli handler (gestori). ad esempio quando si programma un applet si può creare una classe che implementa l'interfaccia ActionListener e tramite questa gestire gli eventi (pressione di pulsanti ecc.). lo si può fare perché la pressione di un pulsante implica la chiamata del metodo actionPerformed() dell'interfaccia ActionListener. se la tua classe ha implementato tale interfaccia allora il metodo actionPerformed() potrà essere richiamato spero di essere stato chiaro, in effetti come dicevo non è affatto semplice parlare di interfacce ma ti assicuro che hanno una grandissima importanza in Java ed è utile imparare a usarle per bene |
|
|
|
|
|
#131 | |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
Quote:
ho fermato il tuo discorso lì dove lo vedi perchè mi dici che Animale è un'interfaccia ? |
|
|
|
|
|
|
#132 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
Quote:
si poteva usare anche una classe astratta ma secondo me quando possibile è sempre meglio usare le interfacce. |
|
|
|
|
|
|
#133 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
mi sa che fino a quando non ne implemento una per esigenza faticherò sempre a comprendere ste benedette interfacce
riesco solo a capire che un'interfaccia potrebbe essere una sorta di ponte tra du classi che poco hanno in comune ma a questo punto uso extends |
|
|
|
|
|
#134 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
Quote:
tra l'altro sono comodissime per definire delle costanti. crei un'interfaccia con variabili precedute dalla parola chiave final e implementando tale interfaccia hai tutte le costanti che vi avevi definito |
|
|
|
|
|
|
#135 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
hai voglia di postarmi qualche semplice esempio ?
|
|
|
|
|
|
#136 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
come ti dicevo quando progetti un'interfaccia grafica hai a che fare con le interfacce per gestire gli eventi quindi qualsiasi tutorial che puoi trovare sull'uso delle swing ti sarà utile
un esempio mio non ce l'ho (a parte quelle che credo per le costanti), di solito mi limito ad utilizzare le interfacce già scritte. in progetti "piccoli" cmq non se ne sente il bisogno secondo me. per questo credo che non sia frequente scrivere interfacce, a meno che non si voglia scrivere una libreria, fornire un servizio... |
|
|
|
|
|
#137 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
grazie recoil anche se fortemente in ritardo
ma se si dichiara un campo statico in una classe, è possibile poi accedervi solo se si dichiara un metodo anch'esso statico ? ho bisogno di una conferma Auguri |
|
|
|
|
|
#138 |
|
Senior Member
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
|
dai miei rimembri dell' Eckel, solo metodi static possono accedere a variabili static.
Fai la prova del 9. Crei una var int i; e cerche di accederci con il main() di quella classe
__________________
Gnu/Linux User
|
|
|
|
|
|
#139 |
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
EDIT
Il contrario di quanto contenuto nella domanda di misterX EDIT Confermo...il contrario. Un campo statico è accessibile ovunque (compatibilmente con il modificatore usato). Un metodo statico può accedere solo a campi e metodi statici. C'è anche il suo bel perchè, ma per l'anno nuovo ho deciso di limitare lo sciame di parole con cui solitamente investo il prossimo Ciao&Auguri |
|
|
|
|
|
#140 |
|
Senior Member
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
|
quindi ho ragione?
__________________
Gnu/Linux User
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:18.











ma non cederò a queste frecciatine








