a cura di Dario Dariol
 
     

    Esercizio 005 - Ancora costanti

     
    Nel precedente esercizio 4 abbiamo affrontato le costanti, realizzate in Java con i modificatori  static e final. Siamo quindi sicuri di conoscerle bene?

    Proviamo ad analizzare il seguente programma:

    class JavaQuiz5 {
      final int s = f();
      final int t = 5;
      int f() {
        return t;
      }

      int ss = ff();
      int tt = 5;
      int ff() {
        return tt;
      }

      JavaQuiz5(){
        System.out.println("s="+s  +" ss="+ss+
                          " f="+f()+" ff="+ff());
      }

      public static void main(String[]args) {
        new JavaQuiz5();
      }
    }

    Come al solito non dobbiamo far eseguire il programma al nostro compilatore/interprete Java preferito. I nostri sono quiz mentali! Dobbiamo invece ragionare sull'esercizio stesso, analizzarlo e risolverlo.

    Analizzandolo possiamo vedere che è composto di due parti molto simili tra di loro: si differenziano solo per l'uso del modificatore final che è presente nelle dichiarazioni di s e t, ma assente invece in quelle di ss e tt. Ciò può essere suffciente per poter prevedere quali valori in fase di stampa?

    La soluzione al prossimo mese (oppure immediatamente dal vostro compilatore/interprete Java preferito se non avete la pazienza di leggere la mia risposta).




MokaByte®  è un marchio registrato da MokaByte s.r.l.

Java® è un marchio registrato da Sun Microsystems; tutti i diritti riservati

E' vietata la riproduzione anche parziale
Per comunicazioni inviare una mail a
mokainfo@mokabyte.it