Подтвердить что ты не робот

Изображение против BufferedImage

Всякий раз, когда вы занимаетесь загрузкой и отображением изображений в Java, я всегда использовал BufferedImage для хранения и обработки изображений в памяти.

Однако я недавно встретил несколько different сайты, которые используют класс Image вместо BufferedImage, и мне стало интересно - в чем отличия?

Я знаю, что BufferedImage имеет большой/оптимизированный набор инструментов, но приносит любую цену? Если да, когда это становится заметным? В каких ситуациях вы использовали бы Image над a BufferedImage или наоборот?

4b9b3361

Ответ 1

BufferedImage extends Image. Image - это только базовый абстрактный класс, и вы не можете его создать. Под капотом вы используете BufferedImage или другую реализацию.

Ответ 2

Не должно быть реальной разницы в производительности между непосредственным созданием образа BufferedImage и Toolkit (java.awt.Toolkit или Image # getScaledInstance). У вас никогда не будет фактического экземпляра Image, потому что он абстрактный класс; вы будете иметь дело только с его подклассами (например, BufferedImage).