Bonjour,

J'ai réalisé un programme pour l'école. Il fonctionne mais j'aimerais que qqn vérifie si il n'y a rien d'inutile et si la présentation est belle. Vous pouvez également me proposer des améliorations.

Voici l'énoncé du programme:

Concevoir une classe qui représenterait des minéraux
Données: origine, couleur, découvreur: type chaine
densité: type réel
Le tout est protégé.
Méthodes: constructeur, modifieur (découvreur), accesseur (origine, densité)

En dériver une classe de cristaux
Données: structure: type chaine
dureté: type réel
Le tout est privé.
Méthode: constructeur
Voici ce qui s'affiche sur la console:

Origine: Perou
Couleur: Vert
Decouvreur: Michel
Densite: 57.0
Structure: carre
Durete: 88.0



Origine: Congo
Couleur: Violet
Decouvreur: Gerard
Densite: 20.0
Structure: rond
Durete: 115.0



Origine: Kenya
Couleur: Rouge
Decouvreur: Benjamin
Densite: 72.0
Structure: elance
Durete: 95.0

La comparaison entre le cristaux 1 et le cristaux 2 est false
Et voici le programme que j'ai réalisé:

Classe Mineraux (surclasse)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
class Mineraux{
	protected String couleur;
	private String origine,decouvreur;
	private float densite;
	Mineraux(String origine,String couleur,String decouvreur,float densite){
		this.origine = origine;
		this.couleur = couleur;
		this.decouvreur = decouvreur;
		this.densite = densite;
	}
	void setDecouvreur(String nouveauDecouvreur){
		decouvreur = nouveauDecouvreur;
	}
	String getOrigine(){
		return origine;
	}
	float getDensite(){
		return densite;
	}
	public boolean compare (Mineraux m) {
		boolean meme = false;
		if (origine.equals (m.origine) && couleur.equals (m.couleur) && decouvreur.equals (m.decouvreur)
		&& densite == m.densite){
		 meme = true;
		 }
		 return (meme);
	}
	public String toString(){
		return("\n"+"\n"+"Origine: "+origine+"\n"+"Couleur: "+couleur+"\n"+"Decouvreur: "+decouvreur+
		"\n"+"Densite :"+densite);
	}
}
Classe Cristaux (sous-classe)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Cristaux extends Mineraux{
	private String structure;
	private float durete;
	Cristaux(String origine,String couleur,String decouvreur,float densite,String structure,float durete){
	super(origine,couleur,decouvreur,densite);
	this.structure=structure;
	this.durete=durete;
	}
	public String getStructure(){
		return structure;
	}
	public float getDurete(){
		return durete;
	}
	public String toString(){
		return("\n"+super.toString()+"\n"+"Structure: "+structure+"\n"+"Durete: "+durete);
	}
}
Classe MinerauxIO (Pour les entrée/sorties)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.io.*;
class MinerauxIO{
 
	public static void main ( String [] args ){
 
		Cristaux p1=new Cristaux("Perou","Vert","Michel",57,"carre",88);
		Cristaux p2=new Cristaux("Congo","Violet","Gerard",20,"rond",115);
		Cristaux p3=new Cristaux("Kenya","Rouge","Benjamin",72,"elance",95);
 
		System.out.println(p1);
		System.out.println(" ");
		System.out.println(p2);
		System.out.println(" ");
		System.out.println(p3);
		System.out.println(" ");
		System.out.println("La comparaison entre le cristaux 1 et le cristaux 2 est "+p1.compare (p2));
 
	}
}
Merci