Разница между android.os.Handler и java.util.logging.Handler?

Вопрос в значительной степени суммирует его. Я ошибочно импортирую java.util.logging и не получаю желаемую функциональность. Теперь я решаю свою проблему, но я хочу знать, почему android создал два обработчика. Мы можем ошибочно импортировать неправильный. То же, что и с фрагментом и фрагментом поддержки.

Из документации для Android :

android.os.Handler:

Обработчик позволяет отправлять и обрабатывать объекты Message и Runnable, связанные с MessageQueue потока. Каждый экземпляр Handler связан с одним потоком и очереди сообщений потока. Когда вы создаете нового обработчика, он привязан к очереди потоков / сообщений потока, который его создает – с этой точки он будет доставлять сообщения и runnables в очередь сообщений и выполнять их по мере их выхода из сообщения очередь.

Из документации Oracle :

java.util.logging.Handler

Объект обработчика принимает сообщения журнала из регистратора и экспортирует их. Например, они могут записывать их на консоль или записывать их в файл или отправлять в службу регистрации в сети или пересылать их в журнал OS или что угодно.

Обработчик можно отключить, выполнив setLevel (Level.OFF) и может быть снова включен, выполнив setLevel с соответствующим уровнем. Классы Handler обычно используют свойства LogManager для установки значений по умолчанию для фильтра обработчика, форматирования и уровня обработчика

java.util.logging.Handler происходит от ванильной Java. Это суперкласс для различных типов конечной точки ведения журнала (сокет, файл …)

android.os.Handler – это класс, созданный командой разработчиков Android для обработки сообщений.

Существуют и другие примеры:

  • Apache DateUtils и Android DateUtils
  • java.lang.Integer и android.R.integer

Пока классы находятся в разных пакетах, им разрешено иметь одно и то же имя. (И это неизбежно, так как люди обязаны использовать одно и то же имя, чтобы ссылаться на смутно похожие вещи)

Обработчик позволяет отправлять и обрабатывать объекты Message и Runnable, связанные с MessageQueue потока. Каждый экземпляр Handler связан с одним потоком и очереди сообщений потока. Когда вы создаете нового обработчика, он привязан к очереди потоков / сообщений потока, который его создает – с этой точки он будет доставлять сообщения и runnables в очередь сообщений и выполнять их по мере их выхода из сообщения очередь.

Справка

Объект Handler принимает запрос на ведение журнала и экспортирует нужные сообщения в целевой объект, например, файл, консоль и т. Д. Его можно отключить, установив уровень ведения журнала на Level.OFF.

Справка

android.os.Handler

Обработчик позволяет отправлять и обрабатывать объекты Message и Runnable, связанные с MessageQueue потока. Каждый экземпляр Handler связан с одним потоком и очереди сообщений потока. Когда вы создаете нового обработчика, он привязан к очереди потоков / сообщений потока, который его создает – с этой точки он будет доставлять сообщения и runnables в очередь сообщений и выполнять их по мере их выхода из сообщения очередь.

Для обработчика используются два основных способа: (1) планировать сообщения и исполняемые файлы, которые будут выполняться как некоторые моменты в будущем; И (2) установить действие, выполняемое в другом потоке, чем ваше собственное.

Пример. Если вы хотите выполнить некоторые действия в потоке пользовательского интерфейса. Это доступно только для API Android

java.util.logging.Handler

Объект обработчика принимает сообщения журнала из регистратора и экспортирует их. Например, они могут записывать их на консоль или записывать их в файл или отправлять в службу регистрации в сети или пересылать их в журнал OS или что угодно.

Пример. Хотите написать вывод где-нибудь, который не обрабатывается предоставленным обработчиком, создайте свой собственный обработчик и зацепите логгером. Журналы будут записаны вашим предоставленным обработчиком.

Это огромная разница. Вызов обработчика класса не означает, что все они работают одинаково. Обработчик выполняет задание, предоставленное им. Это может быть регистрация или, в случае андроида, выполнение какой-либо задачи.