Sobes.tech
Junior

Que signifie le mot-clé transient en Java?

sobes.tech IA

Réponse de l'IA

S'applique aux champs de la classe et indique que ce champ ne doit pas être sérialisé lors de la sérialisation standard de Java (en utilisant java.io.Serializable).

import java.io.Serializable;

public class User implements Serializable {
    private String username;
    private transient String password; // Ce champ ne sera pas sérialisé
    private int age;

    // Constructeur, getters et setters
    public User(String username, String password, int age) {
        this.username = username;
        this.password = password;
        this.age = age;
    }

    public String getUsername() {
        return username;
    }

    public String getPassword() {
        return password;
    }

    public int getAge() {
        return age;
    }
}

Lors de la désérialisation, les champs transient seront initialisés avec les valeurs par défaut pour leur type (0 pour les types primitifs numériques, false pour boolean, null pour les types de référence).