Foros del Web » Programación para mayores de 30 ;) » Java »

metodos static

Estas en el tema de metodos static en el foro de Java en Foros del Web. de que depende de que un metodo sea static me pasa una cosa curiosa, tengo un metodo si lo pongo debajo del main, entonces si ...
  #1 (permalink)  
Antiguo 29/05/2012, 01:43
 
Fecha de Ingreso: agosto-2004
Mensajes: 265
Antigüedad: 19 años, 8 meses
Puntos: 0
metodos static

de que depende de que un metodo sea static

me pasa una cosa curiosa, tengo un metodo si lo pongo debajo del main, entonces si no lo pongo static no funciona, pero si lo pongo antes del main, entonces no tiene que ser static.

como es eso?

un saludo
__________________
Recuerda que si señalas con el dedo, el resto de los dedos te señalan a ti!
  #2 (permalink)  
Antiguo 29/05/2012, 07:25
Avatar de andrexsos17  
Fecha de Ingreso: enero-2011
Ubicación: Manizales
Mensajes: 169
Antigüedad: 13 años, 3 meses
Puntos: 15
Respuesta: metodos static

hola,

Mira si el método lo estas llamando desde "public static void main(String args[])" debe ser estático pues estas dentro de un contexto estático. Básicamente esa es la regla.

Saludos!!!
__________________
Todo problema es una forma mental que la mente sostiene. Los problemas dejan de existir cuando los olvidamos. Todo problema ha sido creado por la mente y existe mientras la mente lo sostenga.
  #3 (permalink)  
Antiguo 31/05/2012, 15:58
Avatar de Lalounam  
Fecha de Ingreso: mayo-2012
Ubicación: México D.F.
Mensajes: 59
Antigüedad: 11 años, 11 meses
Puntos: 19
Respuesta: metodos static

Un método o atributo es static cuando no necesitas de una instancia (new MiClase()) para madarlo llamar. El ejemplo claro es el método main, es estático porque no debes crear una instancia de la clase donde está para llamarse.

Llamada estática:
Código Java:
Ver original
  1. Math.pow(3,3)

Como verás no tuve que hacer:
Código Java:
Ver original
  1. Math miMath = new Math; miMath.pow(3,3)
para hacer uso del método.

Ahora, si tienes un método que no necesita instancias para llamarse y le metes en su definición uno que sí la necesita obviamente hay un conflicto, y se resuelve asegurando que siempre haya instancia o que ninguno la necesite. Por eso te pide que en un contexto estático, todo sea estático.
  #4 (permalink)  
Antiguo 02/06/2012, 10:32
Avatar de zero0097  
Fecha de Ingreso: abril-2010
Ubicación: México
Mensajes: 481
Antigüedad: 14 años
Puntos: 69
Respuesta: metodos static

aqui te doy un ejemplo de como puedes interactuar con el metodo main que es estático y con uno que no lo es, obviamente es solo demostrativo pues no le veo caso a hacer llamadas al main...
Código:
private static principal obj = new principal();
	
	private int n = 5;
	private String[] g = new String[3];
	
	public static void main(String[] args) {
		System.out.println(obj.n + " Pasadas.");
		obj.llamaHola();
		
	}
	
	private void llamaHola() {
		while(n < 10) {
			
			try {
				Thread.sleep(1000);
			} catch(InterruptedException ex) {
				System.out.println("Fallos" + ex);
			}	
			n++;
			main(g);
			
					
		}
		
	}
__________________
De nada, hay te encargo +1...

Etiquetas: metodos, static
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:18.