package Cours6NotesExpress; import java.util.Scanner; public class AppartementNormal extends Appartement { private int nbNuisances; public AppartementNormal() { } public AppartementNormal(String adresse, double superficie, int nbPieces) { super(adresse, superficie, nbPieces); // TODO Auto-generated constructor stub } public AppartementNormal(String adresse, double superficie, int nbPieces, int nbNuisances) { super(adresse, superficie, nbPieces); this.setNbNuisances(nbNuisances); } public int getNbNuisances() { return nbNuisances; } public void setNbNuisances(int nbNuisances) { this.nbNuisances = nbNuisances; } @Override public double CoeffModerateur() { return 1-0.1*this.getNbNuisances(); } @Override // par spécialisation de la méthode toString de Appartement // appartement normal se comporte "comme un appartement" (pour toString) // donc on appelle d'abord le comportement de Appartement // et en plus on veut concaténer qq chose propre à appt normal // on "raffine", on "spécialise" ci-dessous public String toString() { return super.toString()+ " nb nuisances = "+ this.getNbNuisances(); } // alternative TRES MOCHE public String toString2() { return /// d'ici this.getAdresse()+" "+this.getSuperficie() +" "+this.getNbPieces()+ // jusque là : recopie transposée // pb : erreurs / incohérence / source étourderies " nb nuisances = "+ this.getNbNuisances(); } @Override public void saisie(Scanner clav) { /* Ne surtout pas recopier le code de la méthode de saisie de la super-classe : * System.out.println("adresse ?"); this.setAdresse(clav.next()); System.out.println("superficie ?"); this.setSuperficie(clav.nextDouble()); System.out.println("nombre de pièces ?"); this.setNbPieces(clav.nextInt());*/ // faire un appel à super super.saisie(clav); System.out.println("nombre de nuisances ?"); this.setNbNuisances(clav.nextInt()); } }