Java Q&A

       

Конструктор апплета


Перевод на русский © , 2000

Java Q&A

Я не понимаю, для чего нужен конструктор в апплетах. Могу ли я его перекрывать?

Для того, чтобы написать апплет, вы должны сначала создать подкласс класса Applet. Класс Applet точно такой-же, как и любой другой; следовательно, конструктор апплета -- это просто конструктор подкласса класса Applet.

Конструктор апплета, как и любой другой конструктор, не может быть перекрыт. Конструкторы выполняют все необходимые операции инициализации для нового объекта. Помните, что вы можете перекрывать только методы, а не конструкторы.

Класс Applet содержит пять методов, которые дают вам возможность создавать апплет: init(), start(), stop(), destroy() и paint(). Сейчас мы рассмотрим метод init().

Метод init(), работа которого чем-то похожа на конструктор, управляет инициализацией апплета. Браузер или applet viewer автоматически вызывает его для выполнения инициализации при каждой загрузке апплета.

В свете вышесказанного, мы рекомендуем не использовать конструкторы в апплетах, так как нет гарантий, что апплет получит все данные перед вызовом своего метода init(). Например, пускай мы хотим загрузить изображение внутри конструктора апплета. У нас просто ничего не получится, и такая операция должна выполнятся внутри метода init().

В заключение, конструктор апплета это всего лишь конструктор, который был унаследован от класса Applet. Более того, этот конструктор не может быть перекрыт. Поэтому, так как использование конструктора апплета неэффективно, мы советуем воспользоваться перекрытым методом init() для всех операций инициализации.



Содержание раздела