Personne.java
protected String cin;
protected String nom;
protected String prenom;
public Personne(String cin,String nom, String prenom) {
1 public class Personne {
2
3
4
5
6
7
8
9
10
11
12
13
14 }
15
}
this.cin = cin;
this.nom = nom;
this.prenom = prenom;
}
@Override
public String toString() {
return "[cin=" + cin + ", nom=" + nom + "]";
Mohamed Ramzi
Haddad
Signature numérique de
Mohamed Ramzi Haddad
Date : 2017.06.01 13:59:11 +01'00'
Page 1
PersonnelMedical.java
1
2 public class PersonnelMedical extends Personne {
3
4
protected String diplome;
public PersonnelMedical(String cin, String nom, String prenom,String
diplome) {
super(cin, nom, prenom);
this.diplome = diplome;
}
void masser(Joueur unJoueur){
if(!unJoueur.isBlesse()){
unJoueur.setQualite(unJoueur.getQualite()*1.01);
}
}
5
6
7
8
9
10
11
12
13 }
14
Page 1
Kinesitherapeute.java
1 public class Kinesitherapeute extends PersonnelMedical {
2
public Kinesitherapeute(String cin, String nom, String prenom, String
diplome) {
super(cin, nom, prenom,diplome);
}
@Override
public String toString() {
return "Kiné "+super.toString();
}
3
4
5
6
7
Advertisement
8
9 }
Page 1
Medecin.java
public Medecin(String cin, String nom, String prenom, String diplome) {
super(cin, nom, prenom,diplome);
}
void soigner(Joueur unJoueur){
unJoueur.setBlesse(false);
}
@Override
public List<Joueur> selectionner(List<Joueur> joueurs) {
List<Joueur> selection = new ArrayList<Joueur>();
for(Joueur j:joueurs){
if(!j.isBlesse()){
1 import java.util.ArrayList;
3
4 public class Medecin extends PersonnelMedical implements Selectionneur{
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 }
}
@Override
public String toString() {
}
return selection;
return "Mededcin "+super.toString();
selection.add(j);
}
}
Page 1
Sportif.java
protected boolean aJoue;
public Sportif(String cin, String nom, String prenom, boolean aJoue) {
1 public class Sportif extends Personne {
2
3
4
5
6
7
8
9 }
super(cin, nom, prenom);
this.aJoue = aJoue;
}
10
Page 1
private boolean blesse;
private double qualite;
public Joueur(String cin, String nom, String prenom, boolean aJoue) {
Joueur.java
}
}
return 1;
if(!blesse){
qualite*=1.05;
qualite*=1.02;
if(!this.blesse){
Advertisement
return (int) (this.qualite-o.qualite);
}
void sentrainer(){
if(!o.blesse){//les deux sont non blessés
}
void jouerUnMatch(){
}else{//seul this est non blessé et est donc supérieur
super(cin, nom, prenom, aJoue);
blesse = false;
qualite = 50;
}
@Override
public int compareTo(Joueur o) {
1 public class Joueur extends Sportif implements Comparable<Joueur>{
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 }
}
@Override
public String toString() {
}
public void setQualite(double qualite) {
}
public void setBlesse(boolean blesse) {
}
public double getQualite() {
}
public boolean isBlesse() {
return (int) (this.qualite-o.qualite);
return "Joueur "+super.toString();
this.qualite = qualite;
Advertisement
this.blesse = blesse;
}else{//deux blessés
return qualite;
return blesse;
return -1;
}else{
}
}
}
if(!o.blesse){//seul this est blessé et est donc inférieur
Page 1
51
Joueur.java
Page 2
public Entraineur(String cin, String nom, String prenom, boolean aJoue) {
Entraineur.java
super(cin, nom, prenom, aJoue);
for(Joueur j: joueurs){
j.sentrainer();
}
void entrainer(List<Joueur> joueurs){
1 import java.util.Collections;
3
4 public class Entraineur extends Sportif implements Selectionneur{
5
6
7
8
9
10
11
12 // syntaxe 2
13 //
14 //
15 //
16
17
18
19
20
}
@Override
public List<Joueur> selectionner(List<Joueur> joueurs) {
for(int i=0;i<joueurs.size();i++){
joueurs.get(i).sentrainer();
}
}
Collections.sort(joueurs);//tri ascendant par ordre natures (la
méthode compareTo)
21
22
23
24
25
//méthode 1
//parcourir les 11 derniers par index.
//méthode 2
Collections.reverse(joueurs);//inverser la liste pour avoir les
meilleurs au début
return joueurs.subList(0, 11);//retourner la sous liste des joueurs
dont l'index va de 0 à 10
}
@Override
public String toString() {
return "Entraineur "+super.toString();
}
26
27
28
29
30
31 }
32
Page 1
Selectionneur.java
1 import java.util.List;
2
Advertisement
3 public interface Selectionneur {
4
5 }
6
public List<Joueur> selectionner(List<Joueur> Joueurs);
Page 1
Equipe.java
1 import java.util.List;
3
4 public class Equipe {
5
6
7
8
String nom;
List<Personne> membres;
//possibilité 2 permettant de garantir l'unicité des personnes (avec la
méthode equals)
//Set<Personne> membres;
@Override
public String toString() {
String str = "Equipe "+nom;
for(Personne p:membres){
str+=" "+p.toString();
}
return str;
}
9
10
11
12
13
14
15
16
17
18
19 }
20
Page 1
Test.java
1 import java.util.Arrays;
3
4 public class Test {
5
6
7
8
9
10
11 //
public static void main(String[] args) {
//question 3
List<Selectionneur> reunionDeSelectionneurs;
//question 4
il faut redéfinir la méthode equals dans la classe personne pour
qu'elle puisse
12 //
13 //
et
14 //
15 //
tester l'egalité de deux personnes sur la base de leurs cins.
Ensuite l'ajout se fait par la méthde add, la suppression par remove
le test d'existance se fait par contains.
Sinon la déclaration de l'attribut de l'equipe de type Set permet de
faire les ajouts
16 //
et les suppressions sans appeler la méthode contains pour tester
d'existance.
}
17
18
19 }
20
Page 1