【发布时间】:2014-02-12 12:20:04
【问题描述】:
所以我有一个包含这个的抽象类:
public abstract void render(Graphics g);
我正在使用这个从另一个类中调用它:
@Override
public void render(Graphics g) {
g.drawImage(texture.getImage(), x, y, null);
System.out.println("Render called"); //This is debug
}
由于某种原因,它没有被调用。这是我的课程:
package tile;
import java.awt.Graphics;
import java.awt.Image;
public abstract class Tile {
public int x, y;
public Image image;
public abstract void render(Graphics g);
public Tile (int x, int y) {
x = this.x;
y = this.y;
}
public void setLocationPoint(int x, int y) {
x = this.x;
y = this.y;
}
}
这是我的另一堂课:
package tile;
import java.awt.Graphics;
import javax.swing.ImageIcon;
public class TileSmallCloud extends Tile {
public ImageIcon texture;
public int x;
public int y;
public TileSmallCloud(int x, int y, ImageIcon image) {
super(x, y);
texture = image;
}
@Override
public void render(Graphics g) {
g.drawImage(texture.getImage(), x, y, null);
System.out.println("Rendercalled");
}
}
我一直在试图找出为什么它一整天都没有被调用
【问题讨论】:
-
你是怎么调用这个方法的?
-
你已经定义了 render() 方法。在您向我们展示的代码中,您实际上没有调用 render()。
-
我正在使用@Override public void render(Graphics g) { //code } 调用该方法
-
方法不会调用自己。
-
Keshlam - 我知道这是一个愚蠢的问题,但我该如何调用它呢? - 我对此有点陌生 -
标签: java abstract-class