Tema: Clases Java
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/02/2016, 18:02
jnyy
 
Fecha de Ingreso: enero-2010
Mensajes: 16
Antigüedad: 14 años, 4 meses
Puntos: 0
Clases Java

Hola, estoy estudiando java para unas oposiciones y me he encontrado con una pregunta tipo test que no logro entender, es esta:

class A{ class B extends A{
int a = 1; int b = 2;
public int f1(){ public int f1(){
return a; return a + b;
}}
B b = new B();
A a = b;
System.out.println(a.f1());

la salida segun el libro es "3";

No he programada en java, soy novato, pero creo que este código esta mal, no tiene sentido anidar una función en otra sin que la primera llame a la segunda. Tampoco creo que el segundo "return" sea alcanzable.
Pero, arreglándolo un poco, suponiendo que los "return" estén cada uno en una función, cómo podría hacer que esto funcione?, osea, como puedo acceder a un método de la clase B? se puede hacer una instancia desde la propia clase a instanciar y usar sus métodos? supongo que no pero ese es el código tal cual esta en el libro, esta claro, o eso creo yo, que hay errores pero, ¿alguien puede tener idea de lo que pretende este código? como se podría arreglar?

gracias!!! saludos!