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

¿Por que no puedo acceder al metodo?

Estas en el tema de ¿Por que no puedo acceder al metodo? en el foro de Java en Foros del Web. Hola buenas, estoy aprendiendo a usar el motor LibGDX, y tengo un problema al intentar acceder a un método de una clase. Tengo una clase ...
  #1 (permalink)  
Antiguo 15/02/2015, 16:01
 
Fecha de Ingreso: agosto-2014
Mensajes: 20
Antigüedad: 9 años, 8 meses
Puntos: 0
¿Por que no puedo acceder al metodo?

Hola buenas, estoy aprendiendo a usar el motor LibGDX, y tengo un problema al intentar acceder a un método de una clase. Tengo una clase juego, que simplemente maneja unos actores, que extienden de la clase Actor. Pues tengo un actor que se llama Rect que tiene entre otros, un método que se llama getArray(), pero cuando intento acceder a el desde la clase juego me salta el error de que el metodo esta indefinido para la clase Actor.
Algo de codigo:

CLASE JUEGO
Código:
private Stage escenario;
	private Actor bola,rect;
	private OrthographicCamera cam;
	
	public Juego(Game juego) {
		super(juego);
		escenario = new Stage();
		bola = new Bola();
		rect = new Rect()
                rect.getarray();
CLASE RECT
Código:
private Array<Vector2> arrayvertices;
	public Rect() {
		textura  = new Texture("rect.png");
		sprite = new Sprite(textura);}

		 public Array<Vector2> getarray(){
			 return arrayvertices;
		 }
Muchas gracias por adelantado
  #2 (permalink)  
Antiguo 16/02/2015, 01:20
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: ¿Por que no puedo acceder al metodo?

Cita:
cuando intento acceder a el desde la clase juego me salta el error de que el metodo esta indefinido para la clase Actor.
Has posteado la clase Rect y no la clase Actor, que es la que te da problemas.


Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 16/02/2015, 06:55
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: ¿Por que no puedo acceder al metodo?

Hola:

Tienes que hacer un "cast"

Código Java:
Ver original
  1. private Actor bola,rect;  // variables tipo Actor
  2. ..
  3. rect = new Rect();   // Guardas un Rect en una variable tipo Actor
  4.  
  5. rect.getarray();     // Da error, rect es tipo Actor y Actor no tiene ese metodo
  6.  
  7. ((Rect)rect).getArray();    // Debería funcionar bien, has convertido rect a variable tipo Rect  con ((Rect)rect) y así ya puedes llamar a getArray().

Se bueno.
__________________
Apuntes Java
Wiki de Programación

Etiquetas: clase
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 09:04.