Q - a по java

Q: Де дістати JDBC драйвер для ...

Q: Що таке обфуськатор?

A: обфуськатор - це програма, яка ускладнює декомпіляцію байт-коду java-програм. Найчастіше такі програми перейменовують класи, поля і методи, так щоб при декомпілювання їх імена не несли ніякого смислового навантаження. Такий спосіб захисту коду має позитивний побічний ефект. Часто класи, поля і методи перейменовуються в слова з однієї-двох літер. Це дозволяє скоротити розмір результуючого байт-коду, що часто буває критично для J2ME-програм.

Q: Яка IDE краще? У чому писати java-код?

A: Однозначної відповіді на це питання немає. Але на даний момент можна виділити три IDE, що користуються найбільшою популярністю:

Q: Чим декомпілювати байт-код?

A: Пошукайте на google.com за ключовими словами: JAD, DJ Java Decompiler.

Q: Намагаюся запустити програму на Java. Отримую помилку "Exception in thread" main "java.lang.NoClassDefFoundError: HelloWorld / class".

A: Запускати програму потрібно не з ім'ям файлу, а з повним ім'ям класу:

  • java HelloWorld - якщо клас знаходиться в default package.
  • java packagename.HelloWorld - якщо клас знаходиться в packagename.

Q: Чому два об'єкти Calendar, що містять одні й ті ж дату і час при порівнянні методом equals дають значення false?

A: Переконайтеся що значення мілісекунд у цих об'єктів рівні. Їх можна устанавить так:

Q: Що таке WeakReference і SoftReference.

Q: Чи є в Java покажчики на методи?

A: Ні. Всі завдання, які цього вимагають можна вирішити за допомогою інтерфейсів або механізму reflection.

Q: Як додати рядок в JTable.

A: Щоб мати можливість додавати рядки в таблицю, можна написати свою реалізацію TableModel або AbstractTableModel. Можна також скористатися існуючим класом javax.swing.table.DefaultTableModel. Для цього потрібно створювати таблицю з явним зазначенням моделі:

Q: Як я можу розмістити кнопку (CheckBox) в таблицю (Дерево).?

Q: Як запустити іншу програму з Java?

A: Скористайтеся методом Runtime.getRuntime (). Exec ( "команда запуску програми");

Q: Запускаю програму за допомогою Runtime.getRuntime (). Exec ( "команда запуску програми"), а вона зависає.

Q: Порівнюю дві однакові рядки і отримую в результаті false.

A: При порівнянні за допомогою оператора "==" порівнюються посилання на об'єкти. Дві однакові рядки можуть бути різними об'єктами, тому для порівняння скористайтеся методом equals ().

Q: Порадьте, як завантажити файл на сервер.

Q: Як зробити exe файл для запуску програми?

A: Отже, є 2 способи зробити exe для Java-програми. Перший з них простий, створюється exe-файл, який запускає вашу програму в Java-машині. Зазвичай цей файл шукає вже встановлені JRE. Іноді для такого файлу в дистрибутив програми необхідно цю JRE включати.

Другий спосіб - це компіляція в нативний платформозавісімий код. Цей підхід має ряд недоліків, пов'язаних зі складнощами створення таких компіляторів. Ось список ключових слів, за якими слід їх шукати: GCJ, BulletTrain, Excelsior JET, JOVE, TowerJ, Visual Cafe, VisualAge for Java, FastJ.

Q: Чи є в Java множинне спадкування?

A: У Java є множинне спадкування інтерфейсів і немає множинного спадкоємства класів. Якщо ви портіруете код з множинним спадкуванням, то вам на допомогу можуть прийти вкладені класи і аспектне програмування.

Q: При роботі з графікою на сервері виникає такий виняток:

A: На сервері на якому працює програма відсутня підтримка графічного оточення. Існує 2 виходи.

Запускати Java-машину в режимі headless (опція -Djava.awt.headless = true в JRE 1.4 і вище).