SIOGO HANAA FAWZIYYA
Licence 3 en RESEAU ET SYSTEMES INFORMATIQUES
DEVOIR DE JAVA
EXERCICE 1 :
1. Une classe est une structure qui définit un ensemble d’objets qui partagent des
caractéristiques et des comportements. Cette structure définie les attributs et les
méthodes qu’ils contiendront mais également la manière dont ils seront construits
grâce aux constructeurs des méthodes particulières ayant le rôle de créer ou
d’instancier les objets. Directement liées aux 4 piliers fondamentaux de la
programmation orientée objet, la classe permet d’architecturer notre application et
d’assurer les comportements spécifiques aux objets notamment grâce a l’héritage.
2. La différence est qu’une méthode en java est obligatoirement définie a l’intérieur
d’une classe et agit sur les données d’un objet tandis qu’une fonction C existe de
manière autonome dans le programme (procédural).
3. Une classe abstraite peut contenir des méthodes avec implémentation et des attributs
d’instance alors qu’une interface ne contient que des signatures de méthodes et des
constances.
Syntaxe :
Public Interface
NomInterface { … }.
4. ArrayList est basée sur un tableau (rapide pour la lecture) tandis que la LinkedList est
une liste de nœuds chainées (rapide pour ajouter/ supprimer un milieu) .
5. En java la machine virtuelle permet l’independance matérielle en executant le
bytecode sur n(importe quel OS. Elle gère la mémoire et assure la securité.
EXERCICE 2
.Q1( static) reponse 4. L’attricut a une valeur unique partagée par toutes les instances.
.Q2(abstarct) reponse 4. Faux un eclasse abstraite n’a pas forcement de methiode
abstraite.
.Q3(Interface) reponse [Link] contient des signatures de methodes et des constances.
.Q4( List vs Set) reponse 3. Une List accepte les doublons , un Set non .
.Q5 (acces package) reponse 2. Cest la definition de type generique <T>.
.Q6 (Generique) reponse2. Cest le default access
.Q7(try-catch-finally) reponse 1 . Pour la gestion des exceptions.
.Q8(Multi-catch) reponse 1. Vrai on peut avoir plusieurs blocs catchs.
.Q9(tableau) reponse 3. Int [] t = new int [5] ; cest la syntaxe standard.
.Q10(TreeSet) reponse 1. Ca ne compile pas car on ne peut pas comparer un Integer(3)
avec un Character(‘2’) dans un TreeSet trié.
EXERCICE 3
1. Le constructeur d’article
private static int computrt = 0 ;
public Article(String nom, double prixHT) {
[Link] = ++computer ;
[Link] = nom ;
this. prixHT = prixHT ;
}.
2. Instance :
Article monArticle = new
Article( ‘‘Nom’’, 250000) ;
3. L’interet de redefinir la methode ToString() c’est quelle permet d’afficher les
informations de l’objet (ici le code et le nom.) au lieu de son adresse memoire.
4. Public Fragile(String nom, double prixHT, String emballage) {
Super(nom, prixHT) ;
[Link] = ‘‘standrad’’ ;
}.
5. @Override
Public double prixTransport() {
Return super .prixTransport() *2 ;
}.
6. Oui on peut ecrire :
Article tv = new Fragile (‘LG’’, 7000.00) ;
Prix : 7000*0.05*2= 700.
7. C’est une relation d’agrégation. Un magasin dispose de plusieurs articles.
8. private List<Article> articles = new ArrayList<>() ;
9. public void add(Article a)
{[Link](a) ;}
public boolean contains(Article a)
{return [Link] (a) ;}
10. Exportable : La classe Article doit implémenter l’interface(public class Article
implements Expottable) et definir les methodes droitDouane() et
paysDestination().