/**
* De ce nu se compileaza metoda1 si metoda2 din clasa Clasa02 ?
* (la metoda2(), nu clasa anonima new Object(){... e problema)
* Ce probleme ar putea aparea daca limbajul Java ar permite
* De ce nu se compileaza metoda1 si metoda2 din clasa Clasa02 ?
* (la metoda2(), nu clasa anonima new Object(){... e problema)
* Ce probleme ar putea aparea daca limbajul Java ar permite
* compilarea codului respectiv ?
* Scrieti un program care sa justifice raspunsul la ultima
* intrebare.
* (indiciu: folositi polimorfism de tip dynamic binding)
* Scrieti un program care sa justifice raspunsul la ultima
* intrebare.
* (indiciu: folositi polimorfism de tip dynamic binding)
*/
class Clasa01 {
public int metoda1(int i1, int i2, boolean b){
if (b){
return i1 * i2;
}else{
return i1 - i2;
}
}
protected String metoda2(String s){
return s + " etc";
}
}
class Clasa02 extends Clasa01 {
int metoda1(int a, int b, boolean c){
return (1 + super.metoda1(a, b, c));
}
public Object metoda2(String s){
final String str = s;
return new Object(){
public String toString(){
return str;
}
};
}
}
class Clasa01 {
public int metoda1(int i1, int i2, boolean b){
if (b){
return i1 * i2;
}else{
return i1 - i2;
}
}
protected String metoda2(String s){
return s + " etc";
}
}
class Clasa02 extends Clasa01 {
int metoda1(int a, int b, boolean c){
return (1 + super.metoda1(a, b, c));
}
public Object metoda2(String s){
final String str = s;
return new Object(){
public String toString(){
return str;
}
};
}
}
Niciun comentariu:
Trimiteți un comentariu