Стандартная библиотека Java: полный обзор и примеры кода

Онлайн-тренажер Python для начинающих

Изучайте Python легко и без перегрузки теорией. Решайте практические задачи с автоматической проверкой, получайте подсказки на русском языке и пишите код прямо в браузере — без необходимости что-либо устанавливать.

Начать курс

Стандартная библиотека Java (Java Standard Edition): полный обзор

Стандартная библиотека Java (Java Standard Edition — JavaSE) — это фундаментальный набор пакетов, классов и интерфейсов, который поставляется вместе с каждой JDK (Java Development Kit). В отличие от сторонних фреймворков, стандартная библиотека не требует установки дополнительных зависимостей — она доступна "из коробки". Именно она делает Java таким мощным и переносимым языком, предоставляя разработчику готовые решения для большинства повседневных задач: от работы со строками до многопоточности и сетевого взаимодействия.

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

1. Пакет java.lang — основа основ

Пакет java.lang импортируется автоматически в любой Java-программе. Он содержит классы, без которых невозможно представить ни одно приложение.

  • Object — корневой класс для всех объектов. Методы equals(), hashCode(), toString().
  • String, StringBuilder, StringBuffer — работа с неизменяемыми и изменяемыми строками.
  • Math — математические функции (Math.sqrt(), Math.random()).
  • System — консольный ввод/вывод, управление системными свойствами.
  • Thread и Runnable — базовые средства многопоточности.
public class LangExample {
    public static void main(String[] args) {
        // Работа со строками
        String text = "Привет, Java!";
        System.out.println(text.length()); // 13

        // Математика
        double sqrt = Math.sqrt(144);
        System.out.println(sqrt); // 12.0

        // Класс Object
        Object obj = new Object();
        System.out.println(obj.hashCode());
    }
}

2. Пакет java.util — коллекции и утилиты

Это самый обширный пакет. Он включает в себя Collections Framework, работу с датами, случайными числами и многое другое.

Коллекции (Collections Framework)

  • List (ArrayList, LinkedList) — упорядоченные списки с дубликатами.
  • Set (HashSet, TreeSet) — множества без повторов.
  • Map (HashMap, TreeMap) — словари "ключ-значение".
  • Queue (PriorityQueue) — очереди.
import java.util.*;

public class UtilExample {
    public static void main(String[] args) {
        // ArrayList
        List<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Python");
        list.add("Java");
        System.out.println(list); // [Java, Python, Java]

        // HashSet (уникальные элементы)
        Set<String> set = new HashSet<>(list);
        System.out.println(set); // [Java, Python]

        // HashMap
        Map<String, Integer> map = new HashMap<>();
        map.put("Яблоко", 10);
        map.put("Груша", 5);
        System.out.println(map.get("Яблоко")); // 10
    }
}

Утилиты

  • Collections — статические методы для сортировки, поиска, синхронизации.
  • Arrays — работа с массивами.
  • Random — генерация псевдослучайных чисел.

3. Пакет java.io — классический ввод/вывод

Пакет для работы с потоками данных (Streams). Используется для чтения и записи файлов, работы с консолью и сетевыми потоками.

  • InputStream/OutputStream — байтовые потоки.
  • Reader/Writer — символьные потоки.
  • File — представление файла или директории.
  • BufferedReader/BufferedWriter — буферизированное чтение/запись.
import java.io.*;

public class IOExample {
    public static void main(String[] args) throws IOException {
        // Запись в файл
        try (BufferedWriter writer = new BufferedWriter(new FileWriter("example.txt"))) {
            writer.write("Стандартная библиотека Java");
            writer.newLine();
            writer.write("Это пример записи.");
        }

        // Чтение из файла
        try (BufferedReader reader = new BufferedReader(new FileReader("example.txt"))) {
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }
        }
    }
}

4. Пакет java.nio — новый ввод

Рекомендаций