Bibliothèque standard Java (Java Standard Edition) : aperçu complet
La bibliothèque standard Java (Java Standard Edition — JavaSE) est un ensemble fondamental de packages, classes et interfaces fourni avec chaque JDK (Java Development Kit). Contrairement aux frameworks tiers, la bibliothèque standard ne nécessite pas l'installation de dépendances supplémentaires — elle est disponible "prête à l'emploi". C'est elle qui rend Java si puissant et portable, en offrant au développeur des solutions prêtes pour la plupart des tâches quotidiennes : du travail avec les chaînes de caractères à la multitâche et aux interactions réseau.
Dans cet aperçu, nous analyserons les packages clés de la bibliothèque standard, montrerons des exemples pratiques de code et expliquerons comment ces outils sont utilisés dans le développement réel.
1. Package java.lang — le fondement
Le package java.lang est importé automatiquement dans tout programme Java. Il contient des classes sans lesquelles aucune application ne peut être imaginée.
- Object — la classe racine pour tous les objets. Méthodes
equals(),hashCode(),toString(). - String, StringBuilder, StringBuffer — travail avec les chaînes immuables et mutables.
- Math — fonctions mathématiques (
Math.sqrt(),Math.random()). - System — entrée/sortie console, gestion des propriétés système.
- Thread et Runnable — outils de base pour la multitâche.
public class LangExample { public static void main(String[] args) { // Travail avec les chaînes String text = "Bonjour, Java!"; System.out.println(text.length()); // 13
// Mathématiques double sqrt = Math.sqrt(144); System.out.println(sqrt); // 12.0
// Classe Object Object obj = new Object(); System.out.println(obj.hashCode()); }}2. Package java.util — collections et utilitaires
C'est le package le plus vaste. Il inclut le Collections Framework, le travail avec les dates, les nombres aléatoires et bien plus encore.
Collections (Collections Framework)
- List (ArrayList, LinkedList) — listes ordonnées avec doublons.
- Set (HashSet, TreeSet) — ensembles sans répétitions.
- Map (HashMap, TreeMap) — dictionnaires "clé-valeur".
- Queue (PriorityQueue) — files d'attente.
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 (éléments uniques) Set<String> set = new HashSet<>(list); System.out.println(set); // [Java, Python]
// HashMap Map<String, Integer> map = new HashMap<>(); map.put("Pomme", 10); map.put("Poire", 5); System.out.println(map.get("Pomme")); // 10 }}Utilitaires
- Collections — méthodes statiques pour le tri, la recherche, la synchronisation.
- Arrays — travail avec les tableaux.
- Random — génération de nombres pseudo-aléatoires.
3. Package java.io — entrée/sortie classique
Package pour le travail avec les flux de données (Streams). Utilisé pour la lecture et l'écriture de fichiers, le travail avec la console et les flux réseau.
- InputStream/OutputStream — flux d'octets.
- Reader/Writer — flux de caractères.
- File<
Aussi dans la bibliothèque
Files d'attente de tâches pour C++ : implémentation et utilisation
Rate Limiting en TypeScript : bibliothèques, outils et exemples d'implémentation
Files d'attente de tâches pour Kotlin : Coroutines et KJobQueue
Envoi de SMS en JavaScript (Node.js) : API, bibliothèques et exemples de code