public class Personnes implements Cloneable { private String nom; private double salaire; // Designer les champs clonables public Object clone() { Personnes obj = new Personnes(this.nom, this.salaire); return obj; } public Personnes(String nm, double sal) { nom=nm; salaire=sal; } // Méthode Accessible seulement aux sous-classes de la classe Personne protected void modifier_Salaire(double nouveau_salaire) { salaire =nouveau_salaire; } public double getSalaire() { return salaire; } public String getNom() { return nom; } } class Main { public static void main(String[] args) { // Création d'un objet de la classe Personne Personnes personne1 = new Personnes("Bill Gate", 50000.000); // Clonage de l'objet 'personne1' Personnes personne2 = (Personnes) personne1.clone(); Personnes personne3 = (Personnes) personne2.clone(); System.out.println("Personnes 1: " + personne1.getNom() + " " + personne1.getSalaire()); System.out.println("Personnes 2: " + personne2.getNom() + " " + personne2.getSalaire()); System.out.println("Personnes 3: " + personne3.getNom() + " " + personne3.getSalaire()); } } |