
{filelink=11065}
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());
}
}