2012-09-16 3 views
4

И как я могу написать его?Что такое Java Hybrid - апплет + приложение?

Из комментариев к моим reply, вытекал:

«То, что было в старые времена - апплет и приложение - это больше не доступно»

И опровержение:

Мусора. Это [Апплет и приложение] называется гибридом, и он жив и здоров. Задайте отдельный вопрос, если вы хотите уточнить.

Я хотел бы задать , что это за гибрид Java?

Я искал, но по какой-то причине не может найти полезной информации для чего-то «живого и здорового». Ключевые слова, которые я использовал, могут быть слегка отключены, так что это может быть причиной.

+0

Для примера [http://stackoverflow.com/a/11372932/230513). – trashgod

+0

Как это работает? У вас есть инициал и главное в нем, почему нет конфликта? Где другие методы жизненного цикла? –

+0

Я никогда не слышал этот термин, вероятно, авторский. IMO это довольно общий и может быть что угодно - например. Java + Java FX. –

ответ

16

гибрид апплет/приложение просто абстрагирует инициализацию two top-level containers, JFrame и JApplet. Примеры показаны here, here и here.

Addendum: Как это работает?

  • first пример раскрывает метод фабрики, createGUI(), и это добавляет возвращенную панель к дошедшему до нас контейнер верхнего уровня.
  • second предоставляет статический метод initContainer(), передавая в качестве параметра контейнер для верхнего уровня.
  • third создает class Hybrid, который имеет статический метод fireup() и WindowListener для сообщения об ошибках.
+0

+1 Я собирался дать ответ, но это касается его обложек (гораздо лучше, чем у меня было бы). –

+3

@AndrewThompson Я очень тебя ждал. Но так как это покрывает его, и ссылки действительно помогают. Я соглашусь с этим спасибо. –

+0

+1 nice one .... –

4

Гибридное приложение Java - это приложение, которое может запускаться как приложение или апплет. Основной класс приложения определяется либо java.awt.Applet, либо javax.swing.JApplet.

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

Метод

public void init() 

вызывается автоматически контейнером апплета, но должен быть вручную вызывается из метода main (при работе в качестве приложения).

+3

Спасибо, хорошее объяснение. –

Смежные вопросы