2. Esercizio di Programmazione 2

Si considerino le 3 classi A, B e Test:

public class A {
    
    private int n;
    
    public A(int n) {
        this.n=n;
    }
    
    public int getN() {
        return n;
    }
}
public class B extends A {
    
    public B(int n) {
        super(n);    
        }
    
    int getDoppioN(){
        return getN()*2;
    }
}

public class Test {

    public static void main(String[] args) {
        A a = new A(1);
        B b = new B(2);
        
        a=b;
        
        int a1 = a.getN();
        int a2 = a.getDoppioN();
        int a3 = b.getN();
        int a4 = b.getDoppioN();
    }
}

Si spieghi perché il codice nella classe Test genera errori di compilazione.

Last modified: Wednesday, 20 November 2013, 3:01 PM