Ciao a tutti, questa volta i miei problemi ruotano intorno al binding di variabili e metodi.
Per binding si intende il collegamento tra una chiamata del metodo e il corpo del metodo, e si dice statico se avviene a tmepo di compilazione e dinamico, a tempo di esecuzione e dipende dall'oggetto ricevuto.
Premesso questo (che spero essere corretto), devo scrivere un programma che verifica che il binding
a. delle variabili di istanza e di super è statico,
b. l'overloading è statico,
c. quello dei metodi è dinamico.
Quello che non riesco a capire è come posso scrivere un programma che fa vedere come ad esempio la scelta del metodo (overloading) avviene staticamente?
Esempio:
e nel main:codice:class Overloading { void f1(char x) {System.out.println("f1: char"); } void f1(float x) {System.out.println("f1: float"); } }
codice:Overloading test = new Overloading; test.f1('c'); //stampa f1:char test.f1(3.4); //stampa f1:float
Bene, in questo modo ho fatto vedere l'overloading... ma come faccio a mostrare che la scelta è stata statica, anziché dinamica???
Forse in questo modo non va bene...
Grazie a chi mi risponderà.
-LiLy-