函数原型: public abstract boolean drawImage(Image img, int x, int y,
int width, int height,
ImageObserver observer);public static BufferedImage convert(Image image,int scale){
int width=image.getWidth(null),height=image.getHeight(null);
BufferedImage bufimg=new BufferedImage(width/scale,height/scale,
BufferedImage.TYPE_INT_RGB);
bufimg.getGraphics().drawImage(image,0,0,width,height,null); //为什么可以被调用。。
return bufimg;
}
int width, int height,
ImageObserver observer);public static BufferedImage convert(Image image,int scale){
int width=image.getWidth(null),height=image.getHeight(null);
BufferedImage bufimg=new BufferedImage(width/scale,height/scale,
BufferedImage.TYPE_INT_RGB);
bufimg.getGraphics().drawImage(image,0,0,width,height,null); //为什么可以被调用。。
return bufimg;
}
但Graphics2D这个类本身并没有实现drawImage这个方法
错误,这个实例并不是Graphics2D这个类的实例,而是Graphics2D的一个子类的的实例,这个子类肯定已经实现了所有的抽象方法,否则你不可能new出一个还有抽象方法未实现的类实例的
多了解一下多态即可。
看看实际的类型,其实没有必要理会其具体实现类型。