Java hacer una ArrayList de clase y llamar a un método de esa clase

Hjell:

Hasta ahora estoy tratando de hacer una ArrayListde objetos que comparten el mismo método que quiero llamar con el fin de la ArrayList.

Hasta ahora el código es como esto

public class Shape extends Application {
   public void do(GraphicsContext canvas, int size, Color color){
     ;
   } 
}


public class Triangle extends Shape {
   @Override
   public void do(GraphicsContext canvas, int size, Color color){
      canvas.setFill(Color.WHITE);
      double[] xs = {60,80.0,50.0};
      double[] ys = {60,120.0,50.0};
      canvas.fillPolygon(xs,ys,3);
   }
}

Y la clase principal que pone en marcha de forma automática es la siguiente

public class Main {
    public void drawForegroundContent(GraphicContext canvas){
       ArrayList<Shape> shpes = new ArrayList<Shape>();
       Triangle t = new Triangle();
       shapes.add(t);
       shapes.add(t);

       for (Shape k : shapes){
          k.do(canvas,CoreColor.BLACK, 80);
       }
    }
}

Sin embargo, el error es <identifier> expected k.do(canvas, CoreColor.BLACK, 80)

Además, el que se queja de manera similar en el identificador void dode clase de forma. ¿Qué es exactamente mal en este código?

GBlodgett:

Según los documentos , does una palabra clave (igual que en el contexto de un do-whilebucle). Es necesario nombrar a su método de otra cosa. Como los JLS dice en lo que se refiere a las palabras clave:

50 secuencias de caracteres, formadas a partir de letras ASCII, están reservados para uso como palabras clave y no se pueden utilizar como identificadores


También lado nota que tiene los argumentos fuera de servicio cuando se llama al método. Usted está de paso GraphicContext, Color, int, cuando el método acepta GraphicContext, int, Color.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=222358&siteId=1
Recomendado
Clasificación