Рубрики

Часто задаваемые вопросы по программированию на Java | Комплект 1

Почему Java называют «независимым от платформы языком программирования»?

Независимость от платформы означает, что выполнение вашей программы не зависит от типа операционной системы (она может быть любой: Linux, Windows, Mac .. и т. Д.). Поэтому скомпилируйте код только один раз и запустите его в любой системе (в C / C ++ нам нужно скомпилировать код для каждой машины, на которой мы его запускаем). Java основывается как на компиляторе (javac), так и на интерпретаторе (jvm). Ваш исходный код Java сначала компилируется в байт-код с использованием компилятора javac. Этот байт-код может быть легко преобразован в эквивалентный машинный код с помощью JVM. JVM (виртуальная машина Java) доступна во всех операционных системах, которые мы устанавливаем. Следовательно, байт-код, сгенерированный javac, универсален и может быть преобразован в машинный код в любой операционной системе, поэтому java не зависит от платформы.

Объясните последнее ключевое слово в Java?

Последнее ключевое слово в Java используется для ограничения использования переменной, класса и метода.

Переменная: значение переменной Final постоянно, вы не можете ее изменить.
Метод: вы не можете переопределить метод Final.
Класс: вы не можете наследовать от Финального класса.

См. Это для деталей

Когда используется супер ключевое слово?

ключевое слово super используется для обозначения:

  • непосредственный родительский конструктор класса,
  • непосредственная родительская переменная класса,
  • метод непосредственного родительского класса.

Обратитесь к этому для деталей.

В чем разница между StringBuffer и String?

String является неизменяемым классом, т.е. вы не можете изменять его содержимое после его создания. Хотя StringBuffer является изменяемым классом, это означает, что вы можете изменить его содержимое позже. Всякий раз, когда мы изменяем содержимое объекта String, он создает новую строку и ссылается на нее, но не изменяет существующую. Это причина того, что производительность с StringBuffer лучше, чем с String.
Обратитесь к этому для деталей.

Почему множественное наследование не поддерживается в Java?

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

Может ли класс высшего уровня быть закрытым или защищенным?

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

В чем разница между «throw» и «throws» в обработке исключений Java?

Ниже приведены различия между двумя:

  • Ключевое слово throw используется для выброса Exception из любого метода или статического блока, тогда как throws используется для указания того, какое исключение может быть выброшено этим методом.
  • Если какой-либо метод выбрасывает флажок Exception, вызывающая сторона может либо обработать это исключение (используя блок try catch), либо повторно вызвать его, объявив еще одно предложение throws в объявлении метода.
  • Предложение throw можно использовать в любой части кода, где, по вашему мнению, в вызывающий метод необходимо добавить конкретное исключение

Например
бросать
выбрасывать новое исключение («У вас есть исключения»)
выдать новое IOException («Соединение не удалось !!»)
бросает
выдает IOException, NullPointerException, ArithmeticException

Что такое метод finalize ()?

В отличие от c ++, нам не нужно явно уничтожать объекты в Java. « Сборщик мусора » делает это автоматически для нас. Сборщик мусора проверяет, не существует ли ссылок на объект, предполагается, что этот объект больше не требуется, и память, занимаемая объектом, может быть освобождена. Иногда объект может содержать не Java-ресурсы, такие как дескриптор файла или соединение с базой данных, тогда вы хотите убедиться, что эти ресурсы также освобождены до уничтожения объекта. Для выполнения такой операции Java предоставляет защищенный void finalize () в классе объекта. Вы можете переопределить этот метод в своем классе и выполнять необходимые задачи. Непосредственно перед освобождением объекта среда выполнения Java вызывает метод finalize () для этого объекта. Обратитесь к этому для более подробной информации.

Разница в интерфейсе Set и List?

Set и List оба являются дочерними интерфейсами интерфейса Collection. Между ними есть два основных различия

  • Список может содержать повторяющиеся значения, но Set не позволяет этого.
  • В интерфейсе List данные присутствуют в том порядке, который вы вставили, но в случае Set the insert order не сохраняются.

Что произойдет, если вы поместите System.exit (0) в блок try или catch? Будет ли наконец блокировать выполнение?

Вызвав System.exit (0) в блоке try или catch, мы можем пропустить блок finally. Метод System.exit (int) может вызвать исключение SecurityException. Если Sysytem.exit (0) выходит из JVM без выброса этого исключения, блок finally не будет выполнен. Но если System.exit (0) выдает исключение безопасности, тогда будет выполнен блок finally.

Эта статья составлена Dharmesh Singh .

Вы можете увидеть следующее:

Часто задаваемые вопросы по программированию на C | Комплект 1
Часто задаваемые вопросы по программированию на C | Набор 2
Наиболее часто задаваемые вопросы об интервью Amazon
Наиболее часто задаваемые вопросы об интервью Microsoft
Наиболее часто задаваемые вопросы об интервью Accenture
Часто задаваемые вопросы об интервью ООП
Часто задаваемые вопросы об интервью C ++
Часто задаваемые вопросы интервью СУБД | Комплект 1
Часто задаваемые вопросы интервью СУБД | Набор 2
Часто задаваемые вопросы об операционных системах Интервью | Комплект 1
Часто задаваемые вопросы о структуре данных.
Часто задаваемые вопросы об алгоритме интервью
Часто задаваемые вопросы Интервью компьютерных сетей
Топ 10 алгоритмов в вопросах интервью

Рекомендуемые посты:

Часто задаваемые вопросы по программированию на Java | Комплект 1

0.00 (0%) 0 votes