Java - acceso variables

 
Vista:

acceso variables

Publicado por Mary (31 intervenciones) el 25/11/2006 23:02:39
hola

como acceso a las variables de otra clase?

tengo esto:

Public class Datos {
int valor, marca;
}

public class Matrices implements XMatriz {
public Datos mat[][];
public int f;
public int c;
.....
public XMatriz metodo1();
public XMatriz metodo2(f,c);
....
}

desde otra clase trato se accceder a la matriz mat asi
Matrices.mat[i][j]=9 pero me sale el error "non-static variable cannot be referenced from a static context" si lo hago asi tambien Matrices.mat[i][j].valor=9

si coloco XMatriz matriz = new Matrices();
matriz.mat[i][j].valor=9; el error es "Array required, but xmatriz.datos found"

AYUDA POR FAVOR COMO HAGO?
GRACIAS BUEN DIA :)
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

Como??

Publicado por Mary (31 intervenciones) el 25/11/2006 23:05:11
y como accedo a los metodos?

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
sin imagen de perfil

RE:Como??

Publicado por chuidiang (950 intervenciones) el 26/11/2006 05:21:51
Hola:

Esto vale tanto para variables como para metodos.

Si la variable o el método es static, puedes acceder a el directamente

public class Clase
{
public static int valor;
public static void metodo () { ... }
}

se accede así

Clase.valor = 3;
Clase.metodo();

Al ser static, valor y metodo() son compartidos por todas las instancias que hagas de Clase.

Si no son static

public class Clase
{
public int valor;
public void metodo () { ... }
}

se accede así

Clase a = new Clase();
a.valor=3;
a.metodo();

El segundo problema que te sale no tiene que ver con el acceso, sino con el tipo de variable. Habría que ver el resto del código, pero la línea

XMatriz matriz = new Matrices();

te dará un error parecido si XMatriz y Matrices no padre e hija respectivamente.

Se buena.
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