Графика высокого уровня обрабатывается самим устройством (точнее, его реализацией).Низкоуровневая графика требует, чтобы вы рисовали ее вручную, но вы полностью контролируете то, что будет отображаться пользователю.
Говоря о Java ME, почти все в пакете javax.microedition.lcdui
связано с графикой высокого уровня,Низкоуровневая графика обрабатывается Canvas
и Graphics
, а также классами внутри пакета javax.microedition.lcdui.game
.
Преимущество высокоуровневой графики заключается в том, что она очень проста в использовании, поскольку выне нужно рисовать что-либо вручную, поэтому идеально подходит для быстрого создания пользовательского интерфейса.Недостатком является то, что вы ограничены элементами в MIDP 2.0 (единственная возможность расширения - CustomItem
), и вы не можете контролировать, как элементы рисуются.Низкоуровневая графика позволяет рисовать на экране что угодно, но для создания хорошего пользовательского интерфейса требуется много усилий.
В играх обычно используется в основном графика низкого уровня, в других приложениях используется только графика высокого уровня.или оба.Кстати, есть несколько альтернатив, таких как LWUIT , это библиотека, которая использует низкоуровневую графику для создания пользовательского интерфейса.