Ответ 1
init
и destroy
вызывается, когда апплет загружается или выгружается соответственно. Браузер может загружать апплет и останавливать его, но не уничтожать, при навигации, переключении вкладок и т.д.
start
и stop
предназначены для приостановки и возобновления апплета в вышеприведенном случае (когда апплет становится или перестает быть показан на странице).
Я не знаю, действительно ли какой-либо браузер хранит апплет, поэтому это может не иметь большого значения. Но, насколько я узнал об этом, общее правило:
-
init
должен получить апплет, готовый к запуску, но фактически не приводить его в движение. При возврате изinit
апплет должен находиться в состоянии "остановлен". (Остановленный апплет должен использовать как можно меньше ресурсов, а не ЦП.) -
start
должен запустить запуск апплета (начальные потоки и т.д.). Обычно он не будет считывать параметры и перезагружать изображения, и все это, как это должно быть сделано вinit
. -
stop
должен отменить то, чтоstart
делает... возвращает апплет в состояние "остановлено", но при этом он снова можетstart
. Он не должен отменять работуinit
, так как это оставило бы апплет нестандартным, если функциональность будет должным образом разделена. -
destroy
должна выполнить окончательную очистку до того, как апплет выгрузится. Он в основном отменяетinit
. Он не должен останавливать апплет; чтоstop
задание и должно быть выполнено до того, как вызываетсяdestroy
.