Utiliser des packages

Types de données et exceptions en Java

Jim White

Java Developer

Qu'est-ce qu'un package Java ?

  • Les packages organisent le code Java
    • Un package fonctionne comme un dossier
    • Regroupe du code lié (classes, interfaces, enums, etc.)
  • Comme des dossiers
    • Chaque package a un nom

Les packages Java sont comme des dossiers et un classeur pour organiser le code

1 Image tirée de https://commons.wikimedia.org/wiki/File:File_Cabinet.jpg
Types de données et exceptions en Java

Types de packages

  • Packages intégrés
    • Font partie de Java
    • Le nom commence par « java » ou « javax »
  • Packages définis par l'utilisateur
    • Packages que nous définissons
    • Packages obtenus de tiers
Types de données et exceptions en Java

Noms de packages

  • Les noms de packages suivent une convention
    • Tout en minuscules
    • Utiliser des points (.) pour séparer les parties
  • Packages intégrés
    • Commencent par java ou javax
    • Le reste du nom indique la finalité
  • Noms de packages définis par l'utilisateur
    • Commencent par l'inversion du domaine de l'organisation
    • Le reste du nom indique la fonctionnalité
  • Exemples de packages intégrés

    java.security
    java.time
    
  • Exemples de noms de packages définis par l'utilisateur

    com.mycompany.myproject
    com.mycompany.myproject.account
    com.mycompany.myproject.controller
    com.mycompany.myproject.ui
    
Types de données et exceptions en Java

Packages intégrés

Quelques packages intégrés courants

Package Contenu/Fonctionnalités
java.lang Classes de base du langage
java.io Entrées/sorties
java.util.logging Cadre de journalisation
java.math Arithmétique entière et décimale de précision
java.net Réseau
java.util Date/heure et structures de données comme Linked List, Dictionary et utilitaires
java.security Cadre de sécurité
Types de données et exceptions en Java

java.math

  • java.math fournit des classes pour l'arithmétique
    • Utilisées en cryptographie, scientifique et monnaie/devise
  • BigInteger pour représenter de grands entiers
    • Entiers plus grands que ce que int ou long peuvent gérer
    • Pour manipuler des entiers avec presque autant de chiffres que voulu.
  • BigDecimal pour représenter des nombres à virgule très grands ou très petits
    • Gère les erreurs d'arrondi possibles avec float ou double
Types de données et exceptions en Java

Utiliser des packages

  • Utilisez import + nom du package en haut
import java.math.BigInteger;
public class HelloWorld {
  BigInteger acct = new BigInteger("123");
}
  • Les packages peuvent contenir de nombreux types.
    • Utilisez * pour importer tous les types du package
import java.math.*;
public class HelloWorld {
  BigInteger acct = new BigInteger("123");
  BigDecimal pi = new BigDecimal("3.14");
}
Types de données et exceptions en Java

BigInteger et BigDecimal de java.math

  • BigInteger et BigDecimal servent d'enveloppes pour les grands nombres
  • À construire à partir d'une String ou d'un nombre
  • Proposent les méthodes add, subtract, multiply et divide
  • Offrent aussi pow pour la puissance
// Les imports vont en haut de la classe
import java.math.BigInteger;
import java.math.BigDecimal;

// Créer BigInteger ou BigDecimal avec une String
BigInteger big = new BigInteger("1000");
BigInteger ten = new BigInteger("10");
BigDecimal pi = new BigDecimal("3.14");
// Utiliser un primitif pour créer BigDecimal
BigDecimal one = new BigDecimal(1.0);
BigInteger x = big.add(ten); // = 1010
BigDecimal y = pi.add(one); // = 4.14
BigInteger bigSqr = big.pow(2); // = 1000000
BigDecimal piCubed = pi.pow(3); // = 30.959144
Types de données et exceptions en Java

Méthodes de BigInteger et BigDecimal

Méthode Description
abs() Valeur absolue de l'entier
add(x) Ajouter x à l'entier ou au décimal
divide(x) Diviser l'entier ou le décimal par x
multiply(x) Multiplier l'entier ou le décimal par x
negate() Opposer l'entier ou le décimal
pow(int x) L'entier ou le décimal à la puissance x
subtract(x) Soustraire x de l'entier ou du décimal
1 Voir https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html et https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html
Types de données et exceptions en Java

Import non requis

  • Important : le package java.lang est importé automatiquement.
    • Utiliser des éléments de java.lang ne nécessite pas d'import
  • java.lang inclut System, String, les classes enveloppes et Exception.
    • Explique pourquoi nous pouvons apprendre et utiliser les éléments de base sans voir d'import.
Types de données et exceptions en Java

Passons à la pratique !

Types de données et exceptions en Java

Preparing Video For Download...