Vous êtes sur la page 1sur 5

UNIVERSITE DU BURUNDI

FSI-TIC, M1GI
Cours : PROGRAMMATION VANCEE EN JAVA
Enseignant : Dr Audace MANIRABONA

CHECKUP

I. Partie théorique : Questions de cours


1. Distinguer par un exemple une classe d’un objet
Réponse
Une classe peut être comparée à un moule ou un formulaire vierge qui, lorsque nous le
remplissons, nous donne un objet ou un formulaire rempli ayant la forme du moule ainsi
que toutes ses caractéristiques

2. Une classe java comporte 3 parties importantes : (1) attributs, (2) constructeurs, (3)
méthodes, (4) accesseur, (5) mutateur, Pour un objet, que définissent (1) et (3) et à quoi
sert (2) ?
Réponse
(1) Attributs définissent les caractéristiques de la classe.
(2) Constructeur est une méthode d'instance qui va se charger de créer un objet et
d'initialiser ses attributs de la classe
(3) Méthode définissent le comportement de la classe
(4) Un accesseur est une méthode qui permet d'accéder aux variables des objets en lecture,
(5) Un accesseur est une méthode qui permet d'accéder aux variables des objets en
écriture
3. Une méthode java comporte quatre parties essentielles : a) type de retour, b) nom c)
paramètres, d) bloc d’instructions
Distinguer la redéfinition de la surdéfinition (ou surcharge) d’une méthode en se basant
sur les parties données ci-haut.
Réponse
La redéfinition consiste à re-écrire une méthode définit dans la super-classe et à changer
son comportement. Le nombre et le type des arguments ainsi que la valeur de retour
doivent être exactement les mêmes
La surcharge ou surdéfinition consiste à modifier le prototype d’une méthode existante,
en changeant le nombre d’arguments et/ou le type des arguments
4. Distinguer la boucle for de la boucle while
Réponse
On utilise la boucle for quand on connaît le nombre de répétitions de la boucle
On utilise le plus souvent la boucle while quand on ne sait pas combien de fois la boucle
va être effectuée.

5. En utilisant le principe d’héritage, à quoi sert la méthode spéciale super(paramètres) dans


le constructeur d’une classe fille ?
Réponse: la méthode spéciale super(paramètres) dans le constructeur d’une classe
fille permet de récupérer les éléments de l'objet de base donc la classe mère, et de les
envoyer à la classe fille.

6. Soit A une classe abstraite avec A() comme constructeur. Quelle instruction correcte et
celle incorrecte parmi les suivantes, en justifiant la réponse : a) A p=new A() ; b) A q ;
Réponse: b) A q

7. Soit A une classe avec A() comme constructeur et a comme attribut de type int. Si on peut
écrire A p=new A() et int i=A.a ; quelle est la nature de a ?
Réponse: a est une variable statique ou de la classe.

8. En java, on peut créer une classe comme suit : public class Fenetre extends JFrame{…}
avec comme constructeur Fenetre(String s). Si on peut écrire JFrame jf=new
Fenetre(« Tchat »), comment s’appelle ce mécanisme de manipuler des classes
différentes pour un même objet ?
Réponse: ce mécanisme de manipuler des classes différentes pour un même
objet s’appelle Polymorphisme de classe.

9. Pour la transmission d’un fichier en utilisant le socket, à quoi sert la méthode close() ?
Comment bien l’utiliser dans la gestion d’exceptions ?
Réponse: la méthode close () permet de ferme le socket.

10. Quand faut-il penser à implanter un problème sous forme de thread ?


Réponse: On penser à implanter un problème sous forme de thread quand on veut répartir
différents traitements d'un même programme en plusieurs unités distinctes pour permettre
leur exécution "simultanée"

11. Compléter les lettres de A à F avec les termes appropriés dans le paragraphe suivant :
Après avoir défini la classe Personne, j’ai défini ensuite la classe Etudiant avec …A…
pour indiquer qu’elle hérite de Personne. Etudiant est aussi un thread. Pour cela j’ai utilisé
…B… Runnable au lieu de Thread car Runnable est une …D… et que l’héritage multiple
est interdit en java. Par …C… j’ai réécrit dans Etudiant le bloc d’instructions de la
méthode affiche() de Personne. Dans une autre classe de gestion Management, j’ai déclaré
un objet de type Personne mais j’ai créé un objet de type Etudiant grâce au mécanisme de
…E…. Etudiant contient un attribut …F… a dont l’appel dans la main() se fait comme
suit : Etudiant.a
Réponse
A : extends, B : implements, C : Redéfinition, D : Interface, E : Héritage, F : de la classe

12. Explique le principe d’héritage à l’aide d’une exemple courant (pas de code)
Réponse: L’héritage permet de spécifier une classe générale donnée en sous-classe
Supons qu’on veut gérer des animaux dont il y a les herbivores, les carnivores et les
omnivores. On aura une classe générale animaux et les sous-classe herbivore, carnivore et
omnivore

II. Partie pratique : Exercices


Ecrire un programme java permettant d’afficher l’aspect suivant pour n=5:
1 * * * *
* 2 * * *
* * 3 * *
* * * 4 *
* * * * 5
Réponse
public class Main {

public static void main(String[] args) {


// TODO Auto-generated method stub
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
if (i == j) {
System.out.print(1 + i + " ");
} else {
System.out.print("* ");
}
}
System.out.println();
}
}
}
Réponse au question 2 de l’exo

a. BufferedReader br = new BufferedReader(new InputStreamReader(System.in));


b. PrintWriter pr = new PrintWriter(new FileWriter("conn.txt"));
c. BufferedReader fr = new BufferedReader(new FileReader("conn.txt"));
d. PrintStream out = new PrintStream(server.getOutputStream());
e. BufferedReader in = new
BufferedReader(newInputStreamReader(server.getInputStream()));
Réponse au question 3

A: Adresse IP ou nom de domaine du serveur et le port de MySQL

B : le nom de la base de donnée

C : Non d’utilisateur de SGBD MySQL

D : Mot de passe associe à l’utilisateur spécifier à C

E : Requête SQL pour la lecture des donnés la base de donnée

F : Requête SQL pour la mise à jour des donnés la base de donnée

--------Fin-------

Vous aimerez peut-être aussi