Java Интервью Вопросы и ответы (Обновлено для 2019)

Содержание:

Anonim

Введение в Java Интервью Вопросы для новых кандидатов

Если вы ищете работу, связанную с Java, вам необходимо подготовиться к вопросам интервью с Java для более свежих кандидатов. Хотя каждое интервью отличается и объем работы также различен, мы можем помочь вам с лучшими вопросами и ответами для интервью на Java, которые помогут вам сделать скачок и добиться успеха в вашем интервью на Java.

Ниже приведены топовые вопросы для интервью на Java, которые часто задают в интервью.

1. Разница между String Buffer и String Builder в Java

Ответ:
Это один из любимых вопросов для интервьюеров, однако кандидаты часто с треском отвечают.

Вот несколько заметных отличий о String Buffer и String Builder для лучшего понимания

1) StringBuilder - это несинхронизированная версия класса StringBuffer. Методы в StringBuilder
Например, все перегруженные версии метода append () не синхронизированы.
2) StringBuilder работает быстрее, чем StringBuffer из-за отсутствия накладных расходов на получение и освобождение блокировок, связанных с синхронизированными методами.
3) StringBuffer считается поточно-ориентированным, а StringBuilder - не потому, что если требуется такая синхронизация, то лучше использовать класс StringBuffer. Класс StringBuilder Экземпляры не могут совместно использоваться несколькими потоками
4) StringBuffer - старый класс; он включен в JDK с самого первого выпуска, тогда как StringBuilder - относительно новый класс
5) Наиболее важный факт о StringBuffer и StringBuilder заключается в том, что когда конкатенация String выполняется с использованием оператора +, Java внутренне преобразует этот вызов в соответствующий класс метода append () StringBuilder. Например, «один» + «два» + «три» будут преобразованы в новый StringBuilder () .append («один»). Append («два»). Append («три»).

2. Java-программа для поиска наибольшего и наименьшего числа в массиве целых чисел

Ответ:
Простой 5 указатель, чтобы ответить на этот вопрос

  • Создайте исходный файл Java с именем MaximumMinimumArrayDemo.java и скопируйте код для компиляции и выполнения в вашей любимой IDE
  • Создайте метод с именем наибольшие и наименьшие (числа int ()), чтобы вывести наибольшее и наименьшее число массивов int, переданных программе.
  • Используйте две переменные, самую большую и самую маленькую, чтобы сохранить максимальные и минимальные значения из массива. Первоначально самое большое инициализируется с помощью Integer.MIN_VALUE, а самое маленькое инициализируется с помощью Integer.MAX_VALUE.
  • Для всех итераций цикла сравните текущее число с наибольшим до наименьшего и обновите их соответствующим образом.
  • Если число больше наибольшего, оно не может быть меньше наименьшего, а это означает, что вам не нужно проверять, верно ли первое условие, поэтому мы использовали блок кода if-else, где другая часть будет только выполнить, если первое условие неверно.

Логика поиска самого большого элемента из массива в Java приведена ниже.

Вместо назначения переменной с помощью Integer.MAX_VALUE мы назначили первый элемент из массива.

3. В чем разница между C ++ и Java?

Ответ:
C ++ и Java похожи только в синтаксических сравнениях. Ниже приведены различия:

    • Java многопоточная
    • У Java нет указателей
    • Java имеет автоматическое управление памятью (сборка мусора)
    • Java не зависит от платформы
    • Java имеет встроенную поддержку документации комментариев
    • В Java нет перегрузки операторов

Java не обеспечивает множественное наследование

  • В Java нет деструкторов

4. Разница между абстрактным классом и интерфейсом?

Ответ:
Множественное наследование:

Абстрактный класс может наследовать только один абстрактный класс; однако в интерфейсе класс может реализовывать несколько интерфейсов. Это доказывает, что интерфейс поддерживает множественное наследование, тогда как абстрактный класс - нет.

Реализация:

Абстрактный класс может предоставлять код по умолчанию, так как он содержит как неполные, так и полные члены, тогда как интерфейс не может предоставить какой-либо код, поскольку он содержит только неполный член

поля
Мы можем определить поля и ограничения в абстрактном классе, тогда как никакие поля не могут быть определены в интерфейсе

скорость
Абстрактный класс быстр по сравнению с интерфейсом, так как последний требует больше времени для поиска метода в соответствующем классе

использование
Абстрактный класс появляется, когда мы хотим совместно использовать общие функциональные возможности в родительско-дочерних отношениях, тогда как интерфейс используется для определения и реализации полиморфизма, развязки и стандартизации.

5. Разница между частным, защищенным, общедоступным и модификатором пакета или ключевым словом в Java

Ответ:
частный против публичного против защищенного против пакета в Java

Java имеет четыре модификатора доступа, а именно; частный, защищенный, публичный и пакетный уровень

доступ на уровне пакета считается уровнем доступа по умолчанию, предлагаемым Java, если модификатор доступа не определен

Эти модификаторы доступа функционируют, чтобы ограничить доступность класса, метода или переменной, к которой он применяется

Ниже описаны функциональные возможности каждого модификатора доступа и насколько они отличаются друг от друга.

частное ключевое слово в Java

  • Закрытый модификатор в Java может быть применен к полю члена, методу или вложенному классу в Java.
  • Нельзя использовать модификатор private в классе верхнего уровня.
  • закрытые переменные, методы и класс доступны только в том классе, в котором они объявлены.
  • обладает высочайшей формой Encapsulation Java API, которая должна использоваться в максимально возможной степени.

В Java лучше всего объявлять переменную private по умолчанию. Закрытый метод может быть вызван только из класса, в котором он объявлен

пакет или уровень доступа по умолчанию в Java

  • package - это ключевое слово, которое используется для объявления пакета в Java; пакет - это каталог, к которому принадлежит класс в Java.
  • Уровень доступа «пакет» или «по умолчанию» является вторым по величине модификатором ограниченного доступа после частного, и любая переменная, метод или класс, объявленные как «закрытый пакет», доступны только в пакете, которому они принадлежат.

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

защищенное ключевое слово в Java

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

публичное ключевое слово в Java

Публичный - это наименее ограничивающий модификатор доступа в языке программирования Java, и его плохая практика объявлять поле, метод или класс по умолчанию общедоступными, потому что, сделав его общедоступным, очень трудно внести какие-либо изменения во внутреннюю структуру класса, поскольку это затрагивает всех клиентов, использующих Это.

Обнародование переменной класса или экземпляра также нарушило принцип инкапсуляции, который совсем не хорош и плохо влияет на обслуживание.

Рекомендуемая статья

Это было руководство к списку вопросов и ответов об интервью Java, чтобы кандидат мог легко разобраться с этими вопросами интервью Java. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Интервью с Java-разработчиками
  2. Важные вопросы по многопоточности Java
  3. J2EE Интервью Вопросы и ответы
  4. Java String интервью вопрос и ответы
  5. Java 8 Интервью Вопросы и ответы