Я создаю BufferedImage в методе родительского класса и использую Graphics2D для установки параметров (Paint, RenderingHints и т. Д. c.). Другой класс наследует этот базовый класс и переопределяет метод, но вызывает метод суперкласса для получения экземпляра BufferedImage.
Как сохранить настройки Graphics2D в методе суперкласса?
class Parent {
BufferedImage draw() {
BufferedImage image = new BufferedImage(...)
Graphics2D g2 = (Graphics2D) image.getGraphics()
g2.setColor(new Color(255, 0, 0))
return image;
}
}
class Child extends Parent {
@Override
BufferedImage draw() {
BufferedImage image = super.draw()
Graphics2D g2 = (Graphics2D) image.getGraphics()
System.out.println(g2.getColor()) // 255, 255, 255
return image;
}
}