miercuri, 21 iulie 2010

Atenție la numele variabilelor

Ce poate provoca mai multă confuzie decât refolosirea unor nume de variabile ? Studiați exemplul următor și vă veți convinge.
/**
 * Ce se afiseaza la consola prin rularea functiei main() ?
 * Explicati ce se intampla la fiecare pas.
 * Ce concluzii trageti?
 */
package work;
class ClasaExterna {
    private int i;
   
    class ClasaInterna1 {       
        ClasaInterna1(int i){   
            i = i;
        }
    }   
    class ClasaInterna2 {
        ClasaInterna2(int j){
            i = j;
        }   
    }   
    class ClasaInterna3 {
        private int i;       
        ClasaInterna3(int k){
            i = k;
            this.i = k;
        }
    }
       
    public int getI(){
        return i;
    }   
}

public class TestClaseInterne1{
    public static void main (String [] args){
        ClasaExterna ce = new ClasaExterna();
        ce.new ClasaInterna1(3);
        System.out.println(ce.getI());

        ce.new ClasaInterna2(4);
        System.out.println(ce.getI());

        ce.new ClasaInterna3(5);
        System.out.println(ce.getI());
    }
}

Niciun comentariu:

Trimiteți un comentariu