Cours d'Informatique
par Jacques LAFORGUE
Home
NFA 031
Présentation
Calendrier
Cours
Exemples
Exercices
Outils
Projets
Examens
NFA 032
Présentation
Calendrier
Cours
Exemples
Exercices
Projets
Examens
NFP 121
Présentation
Calendrier
Cours
Exemples
Exercices
Projets
Examens
NSY 102
Présentation
Calendrier Jour
Calendrier Soir
Cours
Exemples
Exercices
Examens
NSY 205
Présentation
Calendrier
Cours
Exemples
Exercices
Examens
Exemple13_Heritage
Retour
Télécharger
Exemple du cours sur l'heritage
Bibliotheque.java
import java.util.*; public class Bibliotheque { private ArrayList<MultiMedia> elements; public Bibliotheque() { elements = new ArrayList<MultiMedia>(); } public void ajouter(MultiMedia media) { elements.add(media); } public void afficher() { System.out.println("------ AFFICHAGE DE LA BIBLIOTHEQUE ----"); for(MultiMedia m:elements) { System.out.println("-----------------"); System.out.println(m.toString()); } } }
Exemple13.java
//Exemple du cours sur l'heritage // import java.util.*; // Programme principal // public class Exemple13 { public static void main(String... args) { Livre l1 = new Livre("2012-02-0001", "Livre de SF, appartenant au cycle de Trantor", "Face aux feux du soleil", "Isaac Asimov" ); System.out.println(l1); Film f1 = new Film("2012-02-0002", "Film","Les visiteurs 3","Jean-Marie Poire", "Comedie") .addActeur("Jean Reno") .addActeur("Christian Clavier"); System.out.println(f1); Jeu j1 = new Jeu("2012-02-0003", "Jeu de voiture", "Karting III", "PC", 11); System.out.println(j1); Bibliotheque biblio = new Bibliotheque(); biblio.ajouter(l1); biblio.ajouter(f1); biblio.ajouter(j1); biblio.afficher(); } }
Film.java
// La classe Film qui hérite de la classe MultiMedia // import java.util.*; public class Film extends MultiMedia { private String realisateur; private String[] acteurs; private String genre; // Le constructeur complet qui prend en entrée les attributs de la // classe Film mais aussi les attributs de la classe héritée // public Film(String ident,String description,String titre, String realisateur, String genre) { super(ident,description,titre); this.realisateur = realisateur; this.acteurs = new String[0]; this.genre = genre; } // Ajoute un acteur public Film addActeur(String acteur) { ArrayList<String> l=new ArrayList<String>(Arrays.asList(acteurs)); l.add(acteur); acteurs = l.toArray(acteurs); return this; } // Méthode qui retourne en chaine un livre et qui appelle // explicitement la méthode toString de la classe héritée // afin d'avoir les informations complètes du film et de ses // attributs hérités public String toString() { String a=""; for(String s:acteurs) a=a+String.format("%-15s : %s\n","acteur",s); return super.toString() + String.format("%-15s : %s\n","realisateur",realisateur)+ a + String.format("%-15s : %s\n","genre",genre); } }
Jeu.java
// La classe Film qui hérite de la classe MultiMedia // import java.util.*; public class Jeu extends MultiMedia { private String console; private int ageSup; // Le constructeur complet qui prend en entrée les attributs de la // classe Jeu mais aussi les attributs de la classe héritée // public Jeu(String ident,String description,String titre, String console, int ageSup) { super(ident,description,titre); this.console = console; this.ageSup = ageSup; } // Méthode qui retourne en chaine un livre et qui appelle // explicitement la méthode toString de la classe héritée // afin d'avoir les informations complètes du film et de ses // attributs hérités public String toString() { return super.toString() + String.format("%-15s : %s\n","console",console)+ String.format("%-15s : %s\n","ageSup",ageSup+""); } }
Livre.java
// La classe Livre qui hérite de la classe MultiMedia // public class Livre extends MultiMedia { private String[] auteurs; private String edition; private String genre; private int tome; // Le constructeur complet qui prend en entrée les attributs de la // classe Livre mais aussi les attributs de la classe héritée // public Livre(String ident,String description,String titre, String[] auteurs, String edition, String genre, int tome) { super(ident,description,titre); this.auteurs = auteurs; this.edition = edition; this.genre = genre; this.tome = tome; } // Constructeur simplifie public Livre(String ident,String description, String titre, String auteur) { super(ident,description,titre); auteurs = new String[1]; auteurs[0] = auteur; this.edition = ""; this.genre = ""; this.tome = 0; } // Méthode qui retourne en chaine un livre et qui appelle // explicitement la méthode toString de la classe héritée // afin d'avoir les informations complètes du livre et de ses // attributs hérités public String toString() { String a=""; for(String s:auteurs) a=a+String.format("%-15s : %s\n","auteur",s); return super.toString() + a + String.format("%-15s : %s\n","edition",edition)+ String.format("%-15s : %s\n","genre",genre)+ String.format("%-15s : %s\n","tome",tome+""); } }
MultiMedia.java
// La classe Media : class commune à tous les médias d'uen médiathèque // public class MultiMedia { private String ident; // Identification unique d'un media private String description; // Description générale du media private String titre; // Le titre du media // Constructeur du media public MultiMedia(String ident,String description,String titre) { this.ident = ident; this.description = description; this.titre = titre; } // Méthode qui retourne en chaine le media // public String toString() { String str = ""; str = str + String.format("%-15s : %s\n","ident",this.ident); str = str + String.format("%-15s : %s\n","description", this.description); str = str + String.format("%-15s : %s\n","titre", this.titre); return str; } }
compil.bat
mkdir bin del /f /s /q bin\*.class javac -d bin *.java pause
run.bat
cd bin java Exemple13 pause
Présentation
Calendrier
Cours
Exemples
Exercices
Outils
Projets
Examens
Présentation
Calendrier
Cours
Exemples
Exercices
Projets
Examens
Présentation
Calendrier
Cours
Exemples
Exercices
Projets
Examens
Présentation
Calendrier Jour
Calendrier Soir
Cours
Exemples
Exercices
Examens
Présentation
Calendrier
Cours
Exemples
Exercices
Examens
Cours d'Informatique
par Jacques LAFORGUE
Home
NFA 031
Présentation
Calendrier
Cours
Exemples
Exercices
Outils
Projets
Examens
NFA 032
Présentation
Calendrier
Cours
Exemples
Exercices
Projets
Examens
NFP 121
Présentation
Calendrier
Cours
Exemples
Exercices
Projets
Examens
NSY 102
Présentation
Calendrier Jour
Calendrier Soir
Cours
Exemples
Exercices
Examens
NSY 205
Présentation
Calendrier
Cours
Exemples
Exercices
Examens