Перелік запитань з відповідями для співбесіди по java

Зміст:

  1. Скільки ключових слів зарезервовано мовою, що це за слова, які з них не використовуються?
  2. З яких символів може складатися ім'я змінної (коректний ідентифікатор)?
  3. Що значить слово "ініціалізація"?
  4. На які основні групи можна поділити типи даних?
  5. Які примітивні типи ви знаєте?
  6. Що ви знаєте про перетворення примітивних типів даних, чи є втрата даних, чи можна перетворити логічний тип?
  7. Якими значеннями инициализируются змінні за замовчуванням?
  8. Як передається значення змінної (за посиланням / значенням)?
  9. Що ви знаєте про функції main, які обов'язкові умови її визначення?
  10. Які логічні операції і оператори ви знаєте?
  11. У чому різниця короткої і повної схеми запису логічних операторів?
  12. Що таке таблиця істинності?
  13. Що таке тернарний оператор вибору?
  14. Які унарні і бінарні арифметичні операції ви знаєте?
  15. Які побітові операції ви знаєте?
  16. Яка роль і правила написання оператора вибору (switch)?
  17. Які цикли ви знаєте, в чому їх відмінності?
  18. Що таке "ітерація циклу"?
  19. Які параметри має цикл for, чи можна їх не поставити?
  20. Який оператор використовується для негайної зупинки циклу?
  21. Який оператор використовується для переходу до наступної ітерації циклу?
  22. Що таке масив?
  23. Які види масивів ви знаєте?
  24. Що ви знаєте про класи оболонках?
  25. Що таке автоупаковка (boxing / unboxing)?
  1. Дайте визначення поняттю "виключення"
  2. Яка ієрархія винятків.
  3. Можна / чи потрібно обробляти помилки jvm?
  4. Які існують способи обробки виключень?
  5. Про що говорить ключове слово throws?
  6. У чому особливість блоку finally? Чи завжди він виповнюється?
  7. Чи може бути жодного блоку catch при відлові винятків?
  8. Могли б ви придумати ситуацію, коли блок finally не буде виконано?
  9. Чи може один блок catch відловлювати кілька винятків (з одного і різних гілок наслідувань)?
  10. Що ви знаєте про оброблюваних і не оброблюваних (catched / uncatched) винятки?
  11. У чому особливість RuntimeException?
  12. Як написати власне ( "призначене для користувача") виняток? Якими мотивами ви будете керуватися при виборі типу виключення: checked / unchecked?
  13. Який оператор дозволяє примусово викинути виняток?
  14. Чи є додаткові умови до методу, який потенційно може викинути виняток?
  15. Чи може метод main викинути виняток у поза і якщо так, то де буде відбуватися обробка даного виключення?
  16. Якщо оператор return міститься і в блоці catch і в finally, який з них "головніше"?
  17. Що ви знаєте про OutOfMemoryError?
  18. Що ви знаєте про SQLException? До якого типу checked або unchecked воно відноситься, чому?
  19. Що таке Error? В якому випадку використовується Error. Наведіть приклад Error'а.
  20. Яка конструкція використовується в Java для обробки винятків?
  21. Припустимо, є блок try-finally. У блоці try виникло виключення і виконання перемістилося в блок finally. У блоці finally теж виникло виключення. Яке з двох винятків "випаде" з блоку try-finally? Що трапиться з другим винятком?
  22. Припустимо, є метод, який може викинути IOException і FileNotFoundException в якій послідовності повинні йти блоки catch? Скільки блоків catch буде виконано?
  1. Які "строкові" класи ви знаєте?
  2. Які основні властивості "строкових" класів (їх особливості)?
  3. Чи можна успадкувати строковий тип, чому?
  4. Дайте визначення поняттю конкатенація рядків.
  5. Як перетворити рядок в число?
  6. Як порівняти значення двох рядків?
  7. Як перевернути рядок?
  8. Як працює порівняння двох рядків?
  9. Як обрізати прогалини в кінці рядка?
  10. Як замінити символ в рядку?
  11. Як отримати частину рядка?
  12. Дайте визначення поняттю "пул рядків".
  13. Який метод дозволяє виділити підрядок в рядку?
  14. Як розбити рядок на підрядка по заданому разделителю?
  15. Який метод викликається для перетворення змінної в рядок?
  16. Як дізнатися значення конкретного символу рядка, знаю його порядковий номер у рядку?
  17. Як знайти необхідний символ в рядку?
  18. Чи можна синхронізувати доступ до рядка?
  19. Що робить метод intern ()?
  20. Чим відрізняються і що спільного у класів String, StringBuffer і StringBuilder?
  21. Як правильно порівняти значення рядків двох різних об'єктів типу String і StringBuffer?
  22. Чому рядок незмінна і фіналізували в Java?
  23. Чому масив символів краще рядка для зберігання пароля?
  24. Чому рядок є популярним ключем в HashMap в Java?
  25. Напишіть метод видалення даного символу з рядка.
  1. Дайте визначення поняттю "процес".
  2. Дайте визначення поняттю "потік".
  3. Дайте визначення поняттю "синхронізація потоків".
  4. Як взаємодіють програми, процеси та потоки?
  5. В яких випадках доцільно створювати кілька потоків?
  6. Що може статися якщо два потоки будуть виконувати один і той же код в програмі?
  7. Що ви знаєте про головне потоці програми?
  8. Які є способи створення і запуску потоків?
  9. Який метод запускає потік на виконання?
  10. Який метод описує дію потоку під час виконання?
  11. Коли потік завершує своє виконання?
  12. Як синхронізувати метод?
  13. Як примусово зупинити потік?
  14. Дайте визначення поняттю "потік-демон".
  15. Як створити потік-демон?
  16. Як отримати поточний потік?
  17. Дайте визначення поняттю "монітор".
  18. Як призупинити виконання потоку?
  19. В яких станах може перебувати потік?
  20. Що є монітором при виклику нестатичних і статичного методу?
  21. Що є монітором при виконанні ділянки коду методу?
  22. Які методи дозволяють синхронізувати виконання потоків?
  23. Який метод переводить потік в режим очікування?
  24. Яка функціональність методів notify і notifyAll?
  25. Що дозволяє зробити метод join?
  26. Які умови виклику методу wait / notify?
  27. Дайте визначення поняттю "взаємне блокування".
  28. Чим відрізняються методи interrupt, interrupted, isInterrupted?
  29. В якому випадку буде викинуто виключення InterruptedException, які методи можуть його викинути?
  30. Модифікатори volatile і метод yield ().
  31. пакет java.util.concurrent
  32. Є деякий метод, який виконує операцію i ++. Мінлива i типу int. Передбачається, що код буде здійсняться в багатопотокової середовищі. Чи слід синхронізувати блок?
  33. Що використовується в якості mutex, якщо метод оголошений static synchronized? Чи можна створювати нові екземпляри класу, поки виконується static synchronized метод?
  34. Припустимо в методі run виник RuntimeException, який не був спійманий. Що трапиться з потоком? Чи є спосіб дізнатися про те, що Exception стався (не укладаючи все тіло run в блок try-catch)? Чи є спосіб відновити роботу потоку після того як це сталося?
  35. Які стандартні інструменти Java ви б використовували для реалізації пулу потоків?
  36. Що таке ThreadGroup і навіщо він потрібен?
  37. Що таке ThreadPool і навіщо він потрібен?
  38. Що таке ThreadPoolExecutor і навіщо він потрібен?
  39. Що таке «атомарні типи» в Java?
  40. Навіщо потрібен клас ThreadLocal?
  41. Що таке Executor?
  42. Що таке ExecutorService?
  43. Навіщо потрібен ScheduledExecutorService?

15118 Total Views 2 Views Today