Java | Вопросы собесов
Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @sendme_ads
Ko'proq ko'rsatish📈 Telegram kanali Java | Вопросы собесов analitikasi
Java | Вопросы собесов (@easy_java_ru) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 11 292 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 10 932-o'rinni va Rossiya mintaqasida 56 597-o'rinni egallagan.
📊 Auditoriya ko‘rsatkichlari va dinamika
невідомо sanasidan buyon loyiha tez o‘sib, 11 292 obunachiga ega bo‘ldi.
02 Noyabr, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -50 ga, so‘nggi 24 soatda esa -5 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.
- Tasdiqlash holati: Tasdiqlanmagan
- Jalb etish (ER): Auditoriya o‘rtacha 9.71% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 5.75% ini tashkil etuvchi reaksiyalarni to‘playdi.
- Post qamrovi: Har bir post o‘rtacha 1 096 marta ko‘riladi; birinchi sutkada odatda 649 ta ko‘rish yig‘iladi.
- Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 6 ta reaksiya keladi.
- Tematik yo‘nalishlar: Kontent ставь, void, string, строка, static kabi asosiy mavzularga jamlangan.
📝 Tavsif va kontent siyosati
Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“Сайт: https://easyoffer.ru/
Все каналы: t.me/+xGeAw6ckJ4liYzQy
Контакт для рекламы: @sendme_ads”
Yuqori yangilanish chastotasi (oxirgi ma’lumot 03 Noyabr, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
2⃣Установка Java Development Kit (JDK)
Убедитесь, что на вашем компьютере установлен JDK (Java Development Kit). JDK включает в себя компилятор (javac) и виртуальную машину Java (JVM). Скачайте и установите последнюю версию JDK с сайта Oracle или OpenJDK.
3⃣Компиляция кода
Компилируйте Java-код в байт-код, который будет выполняться на JVM. Для этого используйте команду javac. После компиляции появится файл HelloWorld.class, содержащий байт-код.
javac HelloWorld.java
4⃣Запуск программы
Запустите скомпилированный байт-код с помощью виртуальной машины Java (JVM), используя команду java.
java HelloWorld
Вывод должен быть:
Hello, World!Ставь 👍 и забирай 📚 Базу знаний
jspInit(). Этот метод вызывается один раз при первом создании сервлета или при перезапуске сервера и предназначен для выполнения инициализационных задач (например, настройка ресурсов).
🟠Обработка запросов (Request Processing)
Для каждого HTTP-запроса вызывается метод jspService(). Этот метод обрабатывает входящий запрос и генерирует соответствующий ответ. Основная работа по генерации динамического содержимого происходит на этом этапе.
🟠Завершение (Destruction)
Когда JSP страница выводится из эксплуатации (например, при остановке сервера), контейнер вызывает метод jspDestroy(). Этот метод используется для освобождения ресурсов (например, закрытие соединений с базой данных).
Ставь 👍 и забирай 📚 Базу знанийStatement stmt = connection.createStatement();
String query = "SELECT * FROM employees WHERE department = 'HR'";
ResultSet rs = stmt.executeQuery(query);
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
System.out.println("ID: " + id + ", Name: " + name);
}
stmt.close();
🟠PreparedStatement
PreparedStatement используется для выполнения предварительно скомпилированных SQL-запросов. Это позволяет повысить производительность и безопасность. Оптимизирован для повторного выполнения. Запрос компилируется только один раз, а затем может многократно выполняться с разными параметрами, что повышает производительность. Защита от SQL-инъекций. Использует параметризованные запросы, которые помогают избежать уязвимостей, связанных с SQL-инъекциями. Удобство работы с параметрами. Позволяет устанавливать значения параметров с использованием методов setInt(), setString() и других.
String query = "SELECT * FROM employees WHERE department = ?";
PreparedStatement pstmt = connection.prepareStatement(query);
pstmt.setString(1, "HR");
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
System.out.println("ID: " + id + ", Name: " + name);
}
pstmt.close();
🚩Основные различия
🟠Производительность
Statement: Каждый запрос компилируется заново, что снижает производительность при многократном выполнении одного и того же запроса.
PreparedStatement: Запрос компилируется один раз и может многократно выполняться с разными параметрами, что повышает производительность.
🟠Безопасность
Statement: Уязвим к SQL-инъекциям, поскольку запросы формируются путем конкатенации строк.
PreparedStatement: Использует параметризованные запросы, что защищает от SQL-инъекций.
🟠Удобство использования
Statement: Подходит для простых, одноразовых запросов.
PreparedStatement: Удобен для многократного выполнения запросов с разными параметрами.
🟠Типы запросов
Оба интерфейса могут выполнять запросы типа SELECT, INSERT, UPDATE, DELETE, но PreparedStatement более удобен для запросов с параметрами.
Ставь 👍 и забирай 📚 Базу знаний"java/lang/Object", "java/lang/String").
🟠Строковые литералы, используемые в загруженных классах
Когда классы загружаются JVM, все строковые литералы, используемые в этих классах, добавляются в пул строк. Это включает строки, используемые в JAR файле, а также строки из стандартных библиотек Java, которые загружаются при старте.
🚩Пример строк в пуле при старте
Для демонстрации этого можно написать простой код, который проверяет, присутствуют ли определенные строки в пуле строк при старте программы.
public class StringPoolDemo {
public static void main(String[] args) {
// Проверка стандартных строк, которые могут быть в пуле строк
String str1 = "java";
String str2 = "lang";
String str3 = "Object";
// Вывод строк
System.out.println("str1: " + str1);
System.out.println("str2: " + str2);
System.out.println("str3: " + str3);
// Проверка строк в пуле строк
System.out.println("Is 'java' in pool: " + (str1 == "java"));
System.out.println("Is 'lang' in pool: " + (str2 == "lang"));
System.out.println("Is 'Object' in pool: " + (str3 == "Object"));
}
}
🚩Что происходит при старте JVM
🟠Инициализация JVM
При запуске JVM загружаются системные классы, такие как java.lang.Object, java.lang.String, java.lang.System, и другие. Строковые литералы, используемые в этих классах, добавляются в пул строк.
🟠Загрузка пользовательских классов
Когда JVM загружает пользовательские классы из JAR файла, все строковые литералы в этих классах также добавляются в пул строк.
Ставь 👍 и забирай 📚 Базу знаний