Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Auteurs : Marc-Antoine Crépeau et Christian Mongeon, Groupe : 62
- // Fichier : CabineInternet.java
- // Date : 19 avril 2018
- // Cours : 420-ZE4-MO (TP4, Gestion de cabines)
- // Package du programmeur.
- import outilsjava.*;
- /**
- * La classe CabineInternet hérite de la classe CabineStandard.
- *
- * La classe CabineInternet contient les informations et les méthodes
- * supplémentaires pour une cabine du paquebot qui a un accès à Internet.
- */
- public class CabineInternet extends CabineStandard {
- // Constantes de la classe CabineInternet.
- // Peut consommer entre 0 et 32768 Mio (32 Gio) de données.
- public static final double MIN_CONSOMMATION = 0;
- public static final double MAX_CONSOMMATION = 32768;
- // L'accès Internet coûte 0.05 $ du Mio (mébioctet).
- public static final double PRIX_INTERNET = 0.05;
- // Champ d'instance privé de la classe CabineInternet.
- private double nbMio; // Nombre de Mio (mébioctet) consommés pour l'accès
- // Internet.
- /**
- * Constructeur de la classe CabineInternet pour construire une cabine à
- * accès Internet de base. Au début, aucun accès à Internet (Aucune
- * consommation de données).
- */
- public CabineInternet() {
- initialiserCabine();
- }
- /**
- * Redéfinition de la méthode qui permet d'initialiser une cabine.
- */
- @Override
- public void initialiserCabine() {
- super.initialiserCabine();
- this.setNbMio( 0 );
- }
- /**
- * Méthode accesseur qui retourne la quantité de données consommées pour
- * l'accès à Internet.
- *
- * @return La quantité de données consommées pour l'accès à Internet.
- */
- public double getNbMio() {
- return this.nbMio;
- }
- /**
- * Méthode mutateur qui modifie la quantité de données consommées pour
- * l'accès a Internet avec celle reçue en paramètre.
- *
- * @param nbMio
- * Le nombre de Mio (mébioctet) consommés pour l'accès à
- * Internet.
- */
- public void setNbMio( double nbMio ) {
- if ( nbMio >= CabineInternet.MIN_CONSOMMATION && nbMio <= CabineInternet.MAX_CONSOMMATION ) {
- this.nbMio = nbMio;
- }
- }
- /**
- * Redéfinition de la méthode qui lit les informations à la fin de la
- * croisière (au moment du débarquement du passager).
- */
- @Override
- public void lireInfosFinCroisiere() {
- final String QUEST_NB_MIO = "\nEntrez la quantité de données consommées (en Mio) pour l'accès à Internet "
- + "(entre " + CabineInternet.MIN_CONSOMMATION + " et " + CabineInternet.MAX_CONSOMMATION + ") : ";
- super.lireInfosFinCroisiere();
- double nbMioInternet = OutilsLecture.lireReelValide( QUEST_NB_MIO, MIN_CONSOMMATION, MAX_CONSOMMATION );
- this.setNbMio( nbMioInternet );
- }
- /**
- * Redéfinition de la méthode qui calcule et retourne le prix total de la
- * cabine.
- */
- @Override
- public double calculerPrixTotal() {
- return ( this.nbMio * PRIX_INTERNET );
- }
- /**
- * Méthode statique qui affiche les tarifs de base de la cabine.
- */
- public static void afficherTarifsBase() {
- System.out.println( "Prix pour l'accès à Internet : \t" + OutilsAffichage.formaterMonetaire( PRIX_INTERNET, 2 )
- + " par Mio (mébioctet) consommé." );
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement