Skip to content
Snippets Groups Projects
Commit e7d8a77d authored by Baptiste Royer's avatar Baptiste Royer
Browse files

housekeeping

parent e4a2714d
Branches
No related tags found
No related merge requests found
Showing
with 436 additions and 0 deletions
File added
File added
File added
File added
abstract Mot-clé Déclaration d'une méthode ou d'une classe abstraite.
assert Mot-clé Assertion
break Mot-clé Interrompre une boucle ou un choix multiple.
case Mot-clé Cas dans un choix multiple.
catch Mot-clé Capture d'un type d'exception.
class Mot-clé Déclaration d'une classe.
continue Mot-clé Continuer une boucle en allant à l'itération suivante.
default Mot-clé Cas par défaut dans un choix multiple.
do Mot-clé Boucle itérative.
else Mot-clé Exécution conditionnelle.
enum Mot-clé Déclaration d'une énumération.
extends Mot-clé Héritage : déclaration de la classe mère, ou pour une interface de toutes les interfaces mères.
final Mot-clé Déclarer un membre comme final.
finally Mot-clé Code exécuté quoi qu'il se passe dans un bloc de capture d'exception.
for Mot-clé Boucle itérative.
if Mot-clé Exécution conditionnelle.
implements Mot-clé Déclaration des interfaces implémentées par une classe.
import Mot-clé Déclaration des packages utilisés par une classe.
instanceof Mot-clé Tester si un objet est de la classe indiquée (voir Transtypage).
interface Mot-clé Déclaration d'une interface.
native Mot-clé Déclaration d'une méthode native.
new Mot-clé Allocation d'une instance de classe.
package Mot-clé Déclaration du package de la classe.
private Mot-clé Déclaration d'un membre privé de la classe.
protected Mot-clé Déclaration d'un membre protégé de la classe.
public Mot-clé Déclaration d'un membre public de la classe.
return Mot-clé Retourner une valeur depuis une méthode.
static Mot-clé Déclaration d'un membre statique de la classe.
strictfp Mot-clé Déclaration d'une méthode ou classe où les opérations en virgule flottante doivent être évaluées strictement de gauche à droite selon la spécification Java.
super Mot-clé Référence à l'instance de la classe mère.
switch Mot-clé Début d'un choix multiple.
synchronized Mot-clé Voir Processus légers et synchronisation.
this Mot-clé Référence à l'instance de la classe englobante.
throw Mot-clé Lever une exception.
throws Mot-clé Déclaration des exceptions levées par une méthode.
transient Mot-clé Déclaration d'un attribut à exclure de la sérialisation.
try Mot-clé Capture d'un type d'exception.
void Mot-clé Déclaration d'une méthode ne retournant aucune valeur.
volatile Mot-clé Déclaration d'un attribut volatile, c'est à dire dont la valeur ne doit pas être mise en cache car elle est accédée par différents threads.
while Mot-clé Boucle itérative.
const Réservé Inutilisé actuellement.
goto Réservé Inutilisé actuellement.
boolean Type de données Valeur booléenne (vrai ou faux).
byte Type de données Entier signé de -128 à +127.
char Type de données Caractères Unicode (UTF-16, donc sur 16 bits).
double Type de données Nombre à virgule flottante, double précision.
float Type de données Nombre à virgule flottante, simple précision.
int Type de données Entier signé de -2 147 483 648 à +2 147 483 647.
long Type de données Entier signé de -9 223 372 036 854 775 808 à +9 223 372 036 854 775 807.
short Type de données Entier signé de -32 768 à +32 767.
false Valeur littérale Valeur booléenne fausse.
null Valeur littérale Référence nulle.
true Valeur littérale Valeur booléenne vraie.
Alice 2015
Bruno 1942
Clément 2019
Dorothée 1980
Élise 1954
1;3;true;false;true
1;2;false;true
2;1;42
42;2;poo;coo
package tp03;
class Card {
private Color color;
private Rank rank;
public Card(Color color, Rank rank) {
this.color = color;
this.rank = rank;
}
public Card(String color, String rank) {
this.color = Color.valueOf(color);
this.rank = Rank.valueOf(rank);
}
public Color getColor() {
return this.color;
}
public Rank getRank() {
return this.rank;
}
public int compareRank(Card card) {
return this.rank.getValeur() - card.rank.getValeur();
}
public int compareColor(Card card) {
return this.color.compareTo(card.getColor());
}
public boolean isBefore(Card card) {
return this.rank.getValeur() - card.rank.getValeur() < 0;
}
public boolean equals(Card card) {
return this.compareColor(card) == 0 && this.compareRank(card) == 0;
}
public String toString() {
return this.rank.toString() + " of " + this.color.toString();
}
}
\ No newline at end of file
package tp03;
public enum Color {
CLUB, DIAMOND, HEART, SPADE;
}
\ No newline at end of file
package tp03;
public enum Rank {
SEVEN(7), EIGHT(8), NINE(9), TEN(10), JACK(11), QUEEN(12), KING(13), ACE(14);
private final int valeur;
private Rank(int valeur) {
this.valeur = valeur;
}
public int getValeur() {
return this.valeur;
}
}
\ No newline at end of file
package tp03;
class UseCard {
public static void main(String[] args) {
Card carte1 = new Card(Color.SPADE, Rank.SEVEN);
Card carte2 = new Card("HEART", "KING");
System.out.println(carte1.getColor());
System.out.println(carte2.getRank());
System.out.println(carte1.isBefore(carte2));
System.out.println(carte1.equals(carte2));
System.out.println(carte1.toString() + "\n" + carte2.toString());
}
}
\ No newline at end of file
package tp03;
import java.time.LocalDate;
import java.util.Scanner;
class UseLocalDate {
private Scanner scan = new Scanner(System.in);
public static String dateOfTheDay() {
return "Today's date is " + LocalDate.now() + ".";
}
public static void main(String[] args) {
System.out.println(dateOfTheDay());
}
public static LocalDate inputDate() {
return null;
}
}
\ No newline at end of file
package tp04;
public class NumeroAutomatique {
private static int numero = 0;
public static int getNumber() {
return ++numero;
}
}
\ No newline at end of file
package tp04;
import tp04.NumeroAutomatique;
public class Person {
private int ID;
private String forename;
private String name;
public Person(String forename, String name) {
this.forename = forename;
this.name = name;
NumeroAutomatique temp = new NumeroAutomatique();
this.ID = temp.getNumber();
}
public int getID() {
return this.ID;
}
public String getForename() {
return this.forename;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public void setForename(String forename) {
this.forename = forename;
}
public String toString() {
return ID + " : " + forename + " " + name;
}
public boolean equals(Person other) {
return this.ID == other.ID;
}
}
\ No newline at end of file
package tp04;
public class Student{
private Person person;
private double[] grades;
public Student(Person pers, double[] grades) {
this.person = pers;
this.grades = grades;
}
public Student(String forename, String name, double[] grades) {
this.person = new Person(forename, name);
this.grades = grades;
}
public Student(String forename, String name) {
this.person = new Person(forename, name);
this.grades = new double[0];
}
public String getForename() {
return this.person.getForename();
}
public String getName() {
return this.person.getName();
}
public int getID() {
return this.person.getID();
}
public double[] getGrades() {
return this.grades;
}
public String getStringGrades() {
String result = "[";
for (int i = 0; i<this.grades.length; i++) {
result += this.grades[i] + ";";
}
result = result.substring(0, result.length() - 1);
return result + "]";
}
public void setForename(String forename) {
this.person.setForename(forename);
}
public void setName(String name) {
this.person.setName(name);
}
public void setGrades(double[] grades) {
this.grades = grades;
}
public String toString() {
return "Student [" + this.person.getID() + " : " + this.person.getForename() + " " + this.person.getName() + " = " + getStringGrades() + "; avg = " + getAverage() + "]";
}
public boolean equals(Student other) {
return (this.person == other.person && this.grades == other.grades);
}
public double getAverage() {
if (grades.length == 0) {
return 0;
} else {
int somme = 0;
for (int i = 0; i<grades.length; i++) {
somme += grades[i];
}
return somme/grades.length;
}
}
public void addGrade(double grade) {
double[] temp = this.grades;
this.grades = new double[temp.length + 1];
for (int i = 0; i<grades.length; i++) {
if (i<temp.length) {
this.grades[i] = temp[i];
} else {
this.grades[i] = grade;
}
}
}
}
\ No newline at end of file
package tp04;
public class StudentAbs {
private Student stud;
private int nbAbsence = 0;
public StudentAbs(Student stud) {this.stud = stud;}
public StudentAbs(String forename, String name, double[] grades) {this.stud = new Student(forename, name, grades);}
public StudentAbs(String forename, String name) {this.stud = new Student(forename, name);}
public Student getStud() {
return this.stud;
}
public int getNbAbsences() {
return this.nbAbsence;
}
public void increaseAbs() {
this.nbAbsence++;
}
public String toString() {
return this.stud.toString() + ", nbAbs = " + nbAbsence;
}
public boolean equals(StudentAbs other) {
return (this.stud.equals(other.stud) && this.nbAbsence == other.nbAbsence);
}
public boolean warning(int thresholdAbs, double thresholdAvg) {
return (this.nbAbsence >= thresholdAbs || this.stud.getAverage() <= thresholdAvg);
}
public boolean validation(int thresholdAbs, double thresholdAvg) {
return (this.nbAbsence <= thresholdAbs && this.stud.getAverage() >= thresholdAvg);
}
}
\ No newline at end of file
package tp04;
public class UsePendingCaseQueue {
public static void main(String[] args) {
PendingCase pc1 = new PendingCase("Alice", "AAA", 1234.56);
PendingCase pc2 = new PendingCase("Bruno", "BBB", 0.42);
PendingCase pc3 = new PendingCase("Chloé", "CCC", 745.99);
PendingCase pc4 = new PendingCase("Denis", "DDD", 125.0);
PendingCaseQueue.CAPACITY = 3;
PendingCaseQueue pcq = new PendingCaseQueue();
System.out.println("Before anything: " + pcq);
System.out.println("Empty? " + pcq.isEmpty() + "\tFull? " + pcq.isFull());
pcq.addOne(pc1);
pcq.addOne(pc2);
System.out.println("After addition of pc1 and pc2: " + pcq);
System.out.println("Empty? " + pcq.isEmpty() + "\tFull? " + pcq.isFull());
pcq.addOne(pc3);
System.out.println("After addition of pc3: " + pcq);
System.out.println("Empty? " + pcq.isEmpty() + "\tFull? " + pcq.isFull());
pcq.addOne(pc4);
System.out.println("After addition of pc4: \t" + pcq);
pcq.removeOne();
System.out.println("After a removal: " + pcq);
pcq.addOne(pc1);
System.out.println("After addition of pc1: " + pcq);
pcq.clear();
System.out.println("After clearing: " + pcq);
}
}
package tp04;
public class UsePerson {
public static void main(String[] args) {
Person alice = new Person("Alice", "A");
Person bruno = new Person("Bruno", "B");
Person autre = alice;
boolean testsOK = true;
// test des getters
if(!alice.getForename().equals("Alice") || !alice.getName().equals("A") || !bruno.getForename().equals("Bruno") || !bruno.getName().equals("B") || !autre.getForename().equals("Alice") || !autre.getName().equals("A")) {
System.out.println("Erreur de méthodes GET");
testsOK = false;
}
// test des setters
alice.setForename("Anatole");
bruno.setName("BB");
if(!alice.getForename().equals("Anatole") || !alice.getName().equals("A") || !bruno.getForename().equals("Bruno") || !bruno.getName().equals("BB") || !autre.getForename().equals("Anatole") || !autre.getName().equals("A")) {
System.out.println("Erreur de méthodes SET");
testsOK = false;
}
// test du equals
if(alice.equals(bruno) || !alice.equals(autre)) {
System.out.println("Erreur de méthode equals");
testsOK = false;
}
if(testsOK) System.out.println("Tests de UsePerson réussis !");
}
}
package tp04;
public class UseStudent {
public static void main(String[] args) {
double[] grades = new double[] {19.25, 15.2, 0.01};
double[] grades2 = new double[] {5, 2849, 9};
Person gens1 = new Person("AAAAAAAAAAAAAAAAAAA", "BBBBB");
Student gars1 = new Student(gens1, grades);
Student gars2 = new Student("Jean-Marie", "Lepen", grades2);
Student gars3 = new Student("Gicé", "Védé");
gars3.addGrade(5.49);
gars3.addGrade(5.49);
gars3.addGrade(5.49);
System.out.println(gars1.equals(gars2));
System.out.println(gars2.equals(gars3));
System.out.println(gars1.toString());
System.out.println(gars2.toString());
System.out.println(gars3.toString());
}
}
\ No newline at end of file
package tp04;
public class UseYearGroup {
public static void main(String[] args) {
Student gars1 = new Student("Clara", "Oké", new double[] {19.25, 15.2, 17.3});
Student gars2 = new Student("Will", "Kinson", new double[] {5, 13, 2});
Student gars3 = new Student("Titouan", "Ladopté", new double[] {17.6, 14.3, 15.9});
Student gars4 = new Student("Gicé", "Védé", new double[] {0, 0.1, 0.2});
StudentAbs abs1 = new StudentAbs(gars1);
StudentAbs abs2 = new StudentAbs(gars2);
StudentAbs abs3 = new StudentAbs(gars3);
StudentAbs abs4 = new StudentAbs(gars4);
for (int i = 0; i < 10; i++) {
abs3.increaseAbs();
abs4.increaseAbs();
}
YearGroup BUT1 = new YearGroup(new StudentAbs[]{abs1, abs2, abs3, abs4});
BUT1.validation(5, 14);
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment