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 ou un répertoire
    • Regroupe du code Java lié (classes, interfaces, énumérations, 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 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
    • Écrits tout en minuscules
    • Utiliser des points (.) pour séparer les parties du nom
  • Packages intégrés
    • Commencent par java ou javax
    • Le reste du nom suggère l'objectif
  • Noms de packages définis par l'utilisateur
    • Commencent par le domaine de l'organisation inversé
    • Le reste du nom suggère 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/Offre
java.lang Classes de base du langage
java.io Opérations d'entrée/sortie
java.util.logging Cadriciel de journalisation
java.math Arithmétique entière et décimale de précision
java.net Opérations réseau
java.util Date/heure et structures de données comme Linked List, Dictionary et soutien
java.security Cadriciel 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, en science et pour les devises/monnaie
  • BigInteger pour représenter de grands entiers
    • Des entiers plus grands que ce que int ou long peuvent gérer
    • Pour manipuler des entiers avec un nombre quasi illimité de chiffres.
  • 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

Utilisation des packages

  • Utiliser import + le nom du package en haut
import java.math.BigInteger;
public class HelloWorld {
  BigInteger acct = new BigInteger("123");
}
  • Les packages peuvent contenir plusieurs 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 jouent le rôle d'enveloppes pour les grands nombres
  • Les construire avec une String ou une valeur numérique
  • Offrent les méthodes add, subtract, multiply et divide
  • Incluent aussi des méthodes comme pow (puissance)
// Les imports vont en haut de la classe
import java.math.BigInteger;
import java.math.BigDecimal;

// Créer BigInteger ou BigDecimal avec 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) Ajoute x à l'entier ou au décimal
divide(x) Divise l'entier ou le décimal par x
multiply(x) Multiplie l'entier ou le décimal par x
negate() Oppose l'entier ou le décimal
pow(int x) L'entier ou le décimal à la puissance x
subtract(x) Soustrait 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 un élément 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 du langage 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...