• Domingo 22 de Diciembre de 2024, 23:46

Autor Tema:  Métodos Internos  (Leído 2000 veces)

grandzam

  • Miembro MUY activo
  • ***
  • Mensajes: 118
    • Ver Perfil
Métodos Internos
« en: Jueves 2 de Noviembre de 2006, 05:23 »
0
Hola bueno, hice un examen en la escuela y no sé si lo que respondí esta bien, me pusieron una parte de código asi:

Código: Text
  1. int g(){
  2.    System.out.println("Método interno");
  3.    int h(){
  4.       System.out.println("Método interno");
  5.    }
  6. }
  7.  

Me pedía que encontrara el error y describiera como puediese solucionarse, lo que contesté fué lo siguiente:

1.- Sí g() fuese un método interno, entonces, g() debería estar dentro de otro método;

2.- g() y h() deben retornar un valor int, falta return en ambos

3.- Si los métodos internos no existiesen en Java, entonces el método h() debería sacarse de g(), y corregir lo que dije en el punto 2.

Bueno en realidad no sé si Java soporte métodos internos, y esa es mi pregunta, existen? y lo que contesté esta bien o esta mal???

Mil gracias a quien me responda...

silverfox

  • Miembro MUY activo
  • ***
  • Mensajes: 280
    • Ver Perfil
Re: Métodos Internos
« Respuesta #1 en: Jueves 2 de Noviembre de 2006, 12:42 »
0
Hola...

¿Estás seguro de que hay un error ahí?

Yo veo más de uno ;)

 el punto 2.- es correcto: Los dos métodos devuelven un int, pero ninguno de los dos tiene un return válido.

Para continuar y como respuesta a tu pregunta de si java admite métodos internos, escribe un programa que lo haga, a ver qué te dice el compilador...   :P

Por otra parte, las clases internas (definir una clase dentro de otra) sí que están permitidas sin problemas.

Otra observación, el método h sólo podría usarse (en caso de ser admitido en ese lenguaje) únicamente dentro de g.

Un saludo.



Silverfox

Edit: aclaraciones varias

lencho

  • Miembro de PLATA
  • *****
  • Mensajes: 1076
    • Ver Perfil
Re: Métodos Internos
« Respuesta #2 en: Jueves 2 de Noviembre de 2006, 20:57 »
0
pues si.
1. Correcto
Citar
Sí g() fuese un método interno, entonces, g() debería estar dentro de otro método
</b>.
2. Correcto
Citar
g() y h() deben retornar un valor int, falta return en ambos
</b>.


BYTE.
______________________________________________________________________________________
"No estoy de acuerdo con lo que dices, pero defenderé con mi vida tu derecho a expresarlo"