Java - non_static method

 
Vista:

non_static method

Publicado por pep (5 intervenciones) el 14/05/2005 11:20:09
Main.java [25:1] non-static method Alta(java.util.Vector) cannot be referenced from a static context
b=AltaMaterial.Alta(v);
^
1 error
Errors compiling Main.


me da este error ke veis me lo da en el main que os paso a continucaion

import java.util.*;
import java.io.*;
/**
*
* @author pepe
*/
public class Main {

public static void main(String[] args) {

int Opcio=0;
boolean b=false;

Vector v = new Vector();

System.out.println("1.-Donar d'alta nou material");
Opcio=EntradaTeclat.datoInt();
b=AltaMaterial.Alta(v); <--------------aqui es donde falla

}
}


----------------------------------------
a continuacion os paso a la classe que llama

import java.io.*;
import java.util.*;

public class AltaMaterial extends Material{


public AltaMaterial(){}

public boolean Alta(Vector v){

String Descripcio="";
int Codi=0;
float Mida=0;


System.out.println("Introdueix la Descripcio: ");
Descripcio=EntradaTeclat.dato();


Material m = new Material(Codi,Descripcio,Mida);
v.add(m);
return true;
}
}


gracias desde que has empezado a leer XD
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:non_static method

Publicado por sergey (5 intervenciones) el 14/05/2005 12:32:04
import java.util.*;
import java.io.*;
/**
*
* @author pepe
* @author sergey
* @version 0.01
*/
public class Main {

public static void main(String[] args) {

int Opcio=0;
boolean b=false;

Vector v = new Vector();
// get Instanse
AltaMaterial altaMaterial = new AltaMaterial();

System.out.println("1.-Donar d'alta nou material");
Opcio=EntradaTeclat.datoInt();
// Alta() is non static method. Use it throw instanse variable. :)
b = altaMaterial.Alta(v);
//b=AltaMaterial.Alta(v); <--------------aqui es donde falla

}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:non_static method

Publicado por Wilfredo Vargas Almendras (314 intervenciones) el 14/05/2005 17:56:41
Hola, el caso es que en este caso estas utilizando el nombre de la clase para llamar al metodo, en realidad deberias utilizar el objeto creado
b = altaMaterial.Alta(v);
b = AltaMaterial.Alta(v); // Esta con mayuscula, es el nombre de la clase, no el objeto como en primer caso
SALUDOS WVA

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:non_static methoGRACIAS

Publicado por PEPE (5 intervenciones) el 14/05/2005 18:08:59
GRACIAS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar