Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179

    <java> o <c++> static o costanti

    in c++ costanti si definiscono cost
    in java final

    in c++ e JAVA lo static e costanti sono lo stesso concetto, nel senso funzionano nella stessa maniera!!

    Quindi vorrei sapere in JAVA (o c++ che è uguale)

    1° che differenza c'è tra un dato static (variabile) e un dato const (variabile) e

    2°la differenza tra un metodo static o const

    3° come si comportano un dato membro private di tipo const della classe e un metodo di tipo const public sempre nella classe e come vengono utilizzate...

    (premetto che non ci capisco molto!!)

    Ciao grazie a tutti...

  2. #2
    in c++ lo static e costanti sono lo stesso concetto
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  3. #3
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179
    up...
    ho corretto...

    in c++ e java lo static e constanti funzionano nella stessa maniera...
    ho dimenticato di scrivere la parola JAVA, per c++ invece che const si chiamano final unica differenza...
    Volevo capire che differenza esiste tra static e const.

    GRAZIE

    le domande sono scritte sopra...

  4. #4
    Volevo capire che differenza esiste tra static e const
    Io non ci vedo nessuna similitudine fra le due...
    Puoi avere costanti non statiche e membri statici non costanti.

    Per quanto riguarda i metodi, la parola chiave final viene usata per non dover fornirne di nuove, ma ha poco a che vedere con il significato originale...

    Un metodo final non puo' essere sovrascritto nelle classi derivate: viene ereditato cosi' com'e'.
    Una classe final non puo' essere estesa.
    In effetti la parola final descrive bene queste situazioni e non crea ambiguita', quindi si e' deciso di usarla.
    In C++ mi pare non eista qualcosa di simile alle classi final: si puo' ottenere lo stesso effetto con tecniche strane...
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  5. #5
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179
    Final è un valore che deve essere necessariamente inizializzato la prima volta e il valore non può cambiare altrimenti darà errore!!!!!

    static un pò meno.

  6. #6
    Un membro statico puoi anche non inizializzarlo mai.
    Certo, in quel caso vuol dire che non ti serve... ^^

    La necessita' di inizializzare subito un membro final nasce dal fatto che, in caso contrario, il compilatore non potrebbe assicurarsi in alcun modo che quella variabile venga inizializzata una e una sola volta. Poi ti ritroveresti con un errore a tempo di esecuzione, che non e' una bella cosa...

    Tieni presente che, siccome in Java gli oggetti sono puntatori, scrivere:

    codice:
    final StringBuffer s;
    non sta ad indicare che il buffer s e' costante e non puoi piu' aggiungere altri caratteri.
    Bensi', una volta istanziato un oggetto:

    codice:
    s = new StringBuffer();
    s puntera' SEMPRE a quella particolare istanza.
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.