QCM Java – Gestion des exceptions – Partie 2

QCM sur Java avec des réponses pour la préparation des entretiens d’embauche, des tests en ligne, aux examens et aux certifications. Ces questions et réponses sur Java comprennent divers sujets. Et sont tirés d’un vrai entretien écrit et certaines parties sont en direct. Cette méthode d’apprentissage systématique préparera facilement toute personne pour réussir son test sur Java .
 
 

1. Laquelle de ces classes est une classe mère de toutes les classes de types Exception ?

A RuntimeExceptions

B String

C Throwable

D Cachable

C
La classe Throwable est une classe mère de toutes les classes de types Exception.

 

 

2. Laquelle des classes suivantes est la classe de base des exceptions qui peuvent être interceptées avec un bloc catch ?

A Error

B Exception

C RuntimeExecption

D Tout les réponses sont vrais

B
En Java, la classe Exception est la classe de base de la plupart des exceptions pouvant être levées et interceptées à l’aide d’un bloc try…catch.

Toutes les exceptions courantes, telles que IOException, SQLException ou NullPointerException, héritent directement ou indirectement de la classe Exception.

La classe Error est associée à une erreur d’exécution qui ne peut généralement pas être interceptée, RuntimeExecption est une sous-classe de la classe Exception qui contient toutes les exceptions pouvant être interceptées.

 

 

3. Laquelle de ces classes est en relation à toutes les exceptions qui ne peuvent pas être interceptées?

A Error

B Exception

C RuntimeExecption

D Tout les réponses sont vrais

A
La classe Error représente les erreurs graves qui surviennent au niveau de la Machine Virtuelle Java (JVM). Ces erreurs indiquent généralement un problème critique dont une application ne peut pas se remettre.

 

 
 

4. Lequel de ces opérateurs est utilisé pour générer une instance d’une exception qui peut être levée en utilisant throw?

A new

B malloc

C throws

D thrown

A
L’opérateur new est utilisé pour créer une instance d’une exception. Exemple:

throw new Exception("Message d'exception");

Une fois l’objet exception créé, il peut être levé à l’aide du mot-clé throw.

 

 

5. Quel est la sortie du code suivant?
public class Main 
{
	public static void main(String args[]) 
	{
		try 
		{
			int a = 5 / 0;
			System.out.print("TRY");
		}
		catch(ArithmeticException e) 
		{
			System.out.print("CATCH");        	
		}
	}
}

A TRY

B CATCH

C TRYCATCH

D CATCHTRY

B
Dans le programme ci-dessus, on a divisé le nombre 5 par zéro, ce qui provoque une ArithmeticException. Le programme passe directement au bloc catch, qui intercepte l’exception. Donc, le bloc catch est exécuté et a affiché le message « CATCH ».

 

 

6. Quel bloc est toujours exécuté, indépendamment de l’exception levée?

A throws

B finally

C catch

D throw

B
Le bloc finally s’exécute toujours à la fin du bloc try. Cela garantit que le bloc finally est exécuté même si une exception inattendue se produit. Exemple:

import java.io.*;

class Exemple {
  public static void main(String[] args) {
    try {
      System.out.println("le bloc try");
      // Ne génére pas une exception
      System.out.println(10 / 2);
    }
    // Ne s'exécute pas dans ce cas
    catch (ArithmeticException e) {
      System.out.println("Exception arithmétique");
    }
    // S'exécute toujours
    finally {
      System.out.println("finally : j'exécute toujours.");
    }
  }
}

Sortie:

le bloc try
5
finally : j'exécute toujours.

 

 

7. Exception et Error sont des sous-classes directes de _____

A Throwable

B BaseException

C RuntimeException

D Object

A
La classe Throwable est une classe mère de toutes les classes de types Exception.

 

 
 

8. FileNotFoundException

A Hérite de la classe IOException

B Est une exception générer au moment de la compilation

C Se trouve dans le package java.io

D Tout les réponses sont vrais

D
FileNotFoundException est une exception vérifiée (checked exception) du package java.io. Elle est levée lorsqu’une application tente d’ouvrir un fichier qui n’existe pas, est introuvable ou n’est pas accessible.

Cette exception hérite de la classe IOException, qui regroupe les erreurs liées aux opérations d’entrée/sortie (Input/Output).

 

 

9. IOException

A Est une sous-classe de Exception

B Est une exception générer au moment de la compilation

C Se trouve dans le package java.io

D Tout les réponses sont vrais

D
IOException est une exception vérifiée (checked exception) appartenant au package java.io. Elle est levée lorsqu’une opération d’entrée/sortie (Input/Output) échoue, par exemple lors de la lecture ou de l’écriture d’un fichier, d’un flux de données ou d’une connexion.

La classe IOException hérite de Exception et sert de classe mère à plusieurs exceptions liées aux opérations d’E/S, comme FileNotFoundException et EOFException.

 

 

10. Dans quelle condition le bloc finally ne sera pas exécuté?

A Lorsqu’une erreur se produit

B Lorsque l’exception est levée

C Lorsque System.Exit(1) est appelé

D Dans tous les cas

C
Le bloc finally est utilisé pour exécuter du code de nettoyage, comme la fermeture de fichiers, de connexions ou la libération de ressources. Il est exécuté qu’une exception soit levée ou non.

Cependant, si la méthode System.exit() est appelée, la Machine Virtuelle Java (JVM) s’arrête immédiatement. Le programme se termine avant que le bloc finally ne puisse être exécuté.

 

 

11. La syntaxe multi-catch (gestion de plusieurs exceptions) a été introduite dans _____

A java 5

B java 6

C java 7

D java 8

C
La syntaxe multi-catch a été introduite avec Java 7. Elle permet de capturer plusieurs types d’exceptions dans un seul bloc catch, ce qui rend le code plus simple et évite les duplications lorsque le traitement est identique.

try {
  int tab[] = new int[5];
  tab[8] = 1 / 0;
} catch (ArithmeticException e) {
  System.out.println("Une exception arithmétique se produit");
} catch (ArrayIndexOutOfBoundsException e) {
  System.out.println("L'exception ArrayIndexOutOfBounds se produit");
} catch (Exception e) {
  System.out.println("Une exception se produit");
}

 

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *