This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
2016_2017:s3:concprogobjet:td:td3 [2016/11/08 11:36] blay [RETOUR SUR LES RENDUS] |
2016_2017:s3:concprogobjet:td:td3 [2016/11/08 18:54] (current) blay [RETOUR SUR LES RENDUS] |
||
---|---|---|---|
Line 82: | Line 82: | ||
* aTTENTION AU CHOIX ARBITRAIRE D4UNE valeur max comme 150... si demain vous gérez des convois de ferrari, vous devrez aller modifier votre code de convoi !! Integer.MAX_VALUE résoud votre problème par exemple. | * aTTENTION AU CHOIX ARBITRAIRE D4UNE valeur max comme 150... si demain vous gérez des convois de ferrari, vous devrez aller modifier votre code de convoi !! Integer.MAX_VALUE résoud votre problème par exemple. | ||
* cOMMENT FAIRE POur qu'un véhicule soit un engin???? Il faut répondre à cette question en TD. | * cOMMENT FAIRE POur qu'un véhicule soit un engin???? Il faut répondre à cette question en TD. | ||
+ | * Mettez le toString en facteur surtout quand vous le recopiez partout! | ||
+ | * Prévoir en dure le calcul de la vitesse max et autoriser la modification de la charge !! | ||
+ | * Ne définissez pas toutes vos variables en public ou même protected, simplement parce que vous ne savez pas utiliser des cascades de constructeurs ou des accesseurs! Et réfléchissez à la cohérence de votre code même sur un exemple aussi simple ! | ||
+ | * Sur PAPIER, POUR NOTER QU'UNE CLASSE EST abstraite, vous pouvez simplement écrire <abstract>, idem pour une méthode. | ||
+ | * HORREUR!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (piste : Polymorphisme ce n'est pas une maladie contagieuse.) | ||
+ | <code java> | ||
+ | public double getVitesseMax(){ | ||
+ | double resultat =150; | ||
+ | double resultat2 =0; | ||
+ | for (Vehicule v : listeVehicule) { | ||
+ | if(v instanceof PetitBus){ | ||
+ | resultat2=((PetitBus) v).getVitesseMax(); | ||
+ | } | ||
+ | if(v instanceof CamionCiterne){ | ||
+ | resultat2=((CamionCiterne) v).getVitesseMax(); | ||
+ | } | ||
+ | if(v instanceof CamionBache){ | ||
+ | resultat2=((CamionBache) v).getVitesseMax(); | ||
+ | } | ||
+ | if(v instanceof VoitureSansPermis){ | ||
+ | resultat2=((VoitureSansPermis) v).getVitesseMax(); | ||
+ | } | ||
+ | if (resultat2<resultat){ | ||
+ | resultat = resultat2; | ||
+ | } | ||
+ | } | ||
+ | return resultat; | ||
+ | } | ||
+ | </code> |