👍24😢3❤1
Переворачиваем изображение на 180 градусов
С помощью следующего фрагмента кода вы можете получить перевернутое на 180 градусов изображение.
Подробнее можно ознакомиться здесь.
С помощью следующего фрагмента кода вы можете получить перевернутое на 180 градусов изображение.
Подробнее можно ознакомиться здесь.
👍15😱2😢1
#Вопросы_с_собеседования
🎙️ Можем ли мы объявить метод как final в интерфейсе?
Нет, мы не можем объявить метод как final, потому что все методы в интерфейсе абстрактны, поэтому он должен быть реализован подклассом, а метод final не может быть переопределен.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29🔥1
Радиотелефончик на смартфоне на Java
Пишем радиотелефончик на смартфоне с помощью языка Java
Смотреть статью
Пишем радиотелефончик на смартфоне с помощью языка Java
Смотреть статью
👍11❤4
Object — это базовый класс для всех остальных объектов в Java. Любой класс наследуется от Object и, соответственно, наследует его методы:
public boolean equals(Object obj) – служит для сравнения объектов по значению; int hashCode() – возвращает hash код для объекта; String toString() – возвращает строковое представление объекта; Class getClass() – возвращает класс объекта во время выполнения; protected Object clone() – создает и возвращает копию объекта; void notify() – возобновляет поток, ожидающий монитор; void notifyAll() – возобновляет все потоки, ожидающие монитор; void wait() – остановка вызвавшего метод потока до момента пока другой поток не вызовет метод notify() или notifyAll() для этого объекта; void wait(long timeout) – остановка вызвавшего метод потока на определённое время или пока другой поток не вызовет метод notify() или notifyAll() для этого объекта; void wait(long timeout, int nanos) – остановка вызвавшего метод потока на определённое время или пока другой поток не вызовет метод notify() или notifyAll() для этого объекта; protected void finalize() – может вызываться сборщиком мусора в момент удаления объекта при сборке мусора.
public boolean equals(Object obj) – служит для сравнения объектов по значению; int hashCode() – возвращает hash код для объекта; String toString() – возвращает строковое представление объекта; Class getClass() – возвращает класс объекта во время выполнения; protected Object clone() – создает и возвращает копию объекта; void notify() – возобновляет поток, ожидающий монитор; void notifyAll() – возобновляет все потоки, ожидающие монитор; void wait() – остановка вызвавшего метод потока до момента пока другой поток не вызовет метод notify() или notifyAll() для этого объекта; void wait(long timeout) – остановка вызвавшего метод потока на определённое время или пока другой поток не вызовет метод notify() или notifyAll() для этого объекта; void wait(long timeout, int nanos) – остановка вызвавшего метод потока на определённое время или пока другой поток не вызовет метод notify() или notifyAll() для этого объекта; protected void finalize() – может вызываться сборщиком мусора в момент удаления объекта при сборке мусора.
👍18
#Вопросы_с_собеседования
🎙️ Назовите исключения, создаваемые классами Spring DAO.
На диаграмме изображены все классы Spring DAO в иерархическом порядке.
На диаграмме изображены все классы Spring DAO в иерархическом порядке.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
#Вопросы_с_собеседования
🎙️ Что произойдет, если ключевое слово static не использовать с методом main() в Java?
Ошибки компиляции не будет, но во время выполнения мы получим ошибку NoSuchMethodError.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27🤔1
#Вопросы_с_собеседования
🎙️ Что такое метод main?
Это точка входа в программу. В приложении их может быть много. Причем если ни одного метода main в приложении нет, при попытке запуска возникнет ошибка Error: Main method not found.
public static void main(String[] args) {}
Это точка входа в программу. В приложении их может быть много. Причем если ни одного метода main в приложении нет, при попытке запуска возникнет ошибка Error: Main method not found.
public static void main(String[] args) {}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15😢3
Метод regionMatches()
Используется для сравнения подстроки одной строки с подстрокой другой строки, то есть сравниваются части строк и возвращается результат этого сравнения — true (если части строк совпали) или false (не совпали).
Параметры
ignoreCase — логическая переменная со значение true — игнорировать регистр, со значением false — не игнорировать регистр.
toffset — позиция, с которой начнем отсчет.
other — другая строка, часть которой мы будем сравнивать.
ooffset — позиция, с которой начнем отсчет в строке other
len — количество символов для сравнения.
Используется для сравнения подстроки одной строки с подстрокой другой строки, то есть сравниваются части строк и возвращается результат этого сравнения — true (если части строк совпали) или false (не совпали).
Параметры
ignoreCase — логическая переменная со значение true — игнорировать регистр, со значением false — не игнорировать регистр.
toffset — позиция, с которой начнем отсчет.
other — другая строка, часть которой мы будем сравнивать.
ooffset — позиция, с которой начнем отсчет в строке other
len — количество символов для сравнения.
👍7❤3😢2
#Вопросы_с_собеседования
🎙️ В какой последовательности происходит вызов конструкторов при наследовании?
Сначала вызывается конструктор родительского или базового класса, а затем вызывается конструктор производного класса.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20
FileOutputStream vs. FileWriter
Запись файлов на Java осуществляется двумя способами: FileOutputStream и FileWriter. Какой именно метод выбрать, зависит от конкретной задачи.
FileOutputStream предназначен для записи потоков необработанных байтов. Это делает его идеальным решением для работы, например, с изображениями.
У FileWriter другое призвание: работа с потоками символов. Так что если вы пишете текстовые файлы, выбирайте этот метод.
Запись файлов на Java осуществляется двумя способами: FileOutputStream и FileWriter. Какой именно метод выбрать, зависит от конкретной задачи.
FileOutputStream предназначен для записи потоков необработанных байтов. Это делает его идеальным решением для работы, например, с изображениями.
У FileWriter другое призвание: работа с потоками символов. Так что если вы пишете текстовые файлы, выбирайте этот метод.
👍27❤1
#Вопросы_с_собеседования
🎙️ Что будет результатом выполнения следующего фрагмента кода?
Неопределенность, так как массив не отсортирован. Если добавить вызов Arrays.sort(array), то результат будет равен 2, потому что в отсортироанном массиве {-3, 4, 8, 10} число 8 имеет такой индекс.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍40
#Вопросы_с_собеседования
👁 Как получить коллекцию только для чтения?
При помощи:
•
При помощи:
•
Collections.unmodifiableList(list);
• Collections.unmodifiableSet(set);
• Collections.unmodifiableMap(map).
Эти методы принимают коллекцию в качестве параметра, и возвращают коллекцию только для чтения с теми же элементами внутри.Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
Объединение двух массивов
Наиболее лаконичный способ объединить элементы двух массивов – это воспользоваться классом ArrayUtils из Commons Lang.
Подробнее можно ознакомиться здесь.
Наиболее лаконичный способ объединить элементы двух массивов – это воспользоваться классом ArrayUtils из Commons Lang.
Подробнее можно ознакомиться здесь.
👍21
#Вопросы_с_собеседования
👁 Почему хранить пароль предпочтительнее в char[]/byte[], а не в String?
☕️ Строка в виде литерала сразу раскрывает пароль, плюс она всегда хранится в string-пуле.
☕️ byte[]/char[] возможно сбросить после использования, и удалить все ссылки на него.
☕️ Строка в виде литерала сразу раскрывает пароль, плюс она всегда хранится в string-пуле.
☕️ byte[]/char[] возможно сбросить после использования, и удалить все ссылки на него.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33❤1
Клонирование массивов
Когда вы клонируете одномерный массив, такой как Object[], выполняется «глубокая копия» с новым массивом, содержащим копии элементов исходного массива, а не ссылки.
Подробнее с методом clone() можно ознакомиться здесь.
Когда вы клонируете одномерный массив, такой как Object[], выполняется «глубокая копия» с новым массивом, содержащим копии элементов исходного массива, а не ссылки.
Подробнее с методом clone() можно ознакомиться здесь.
👍13
#Вопросы_с_собеседования
👁 Какие существуют особенности использования вложенных классов: статических и внутренних? В чем заключается разница между ними?
• Вложенные классы могут обращаться ко всем членам обрамляющего класса, в том числе и приватным.
• Для создания объекта статического вложенного класса объект внешнего класса не требуется.
• Из объекта статического вложенного класса нельзя обращаться к не статическим членам обрамляющего класса напрямую, а только через ссылку на экземпляр внешнего класса.
• Обычные вложенные классы не могут содержать статических методов, блоков инициализации и классов. Статические вложенные классы - могут.
• В объекте обычного вложенного класса хранится ссылка на объект внешнего класса. Внутри статической такой ссылки нет. Доступ к экземпляру обрамляющего класса осуществляется через указание .this после его имени. Например: Outer.this.
• Вложенные классы могут обращаться ко всем членам обрамляющего класса, в том числе и приватным.
• Для создания объекта статического вложенного класса объект внешнего класса не требуется.
• Из объекта статического вложенного класса нельзя обращаться к не статическим членам обрамляющего класса напрямую, а только через ссылку на экземпляр внешнего класса.
• Обычные вложенные классы не могут содержать статических методов, блоков инициализации и классов. Статические вложенные классы - могут.
• В объекте обычного вложенного класса хранится ссылка на объект внешнего класса. Внутри статической такой ссылки нет. Доступ к экземпляру обрамляющего класса осуществляется через указание .this после его имени. Например: Outer.this.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11