10 Questions piège sur JAVA posées en entretien d’embauche

Les questions pouvant être posées par des recruteurs sont nombreuses. Ce sont quelques-unes des questions les plus fréquemment posées. Prenez le temps de lire ces questions et réfléchir soigneusement à la façon dont vous répondriez à chacune d’elles lorsqu’on vous le demandera.
 
 

1. Comment pouvez-vous forcer le Garbage Collector?
Vous ne pouvez pas forcer GC, mais vous pouvez l’appeler en utilisant System.gc(). JVM ne garantit pas que GC sera démarré immédiatement.

 

2. Pourquoi utiliseriez-vous un bloc synchronisé par rapport à une méthode synchronisée?
Les blocs synchronisés placent des verrous pour des périodes plus courtes que les méthodes synchronisées.

 

3. Quelle est la différence entre la méthode sleep() et wait() ?
sleep(1000); met le thread de côté pendant exactement une seconde. wait(1000) provoque une attente jusqu’à une seconde. Un thread peut cesser d’attendre s’il reçoit l’appel notify() ou notifyAll(). La principale différence est que la méthode wait() est définie dans la classe Object et la méthode sleep() est définie dans la classe Thread.

 

Différence entre Sleep et WaitDifférence entre Sleep et WaitQuelle est la différence entre sleep() et wait() ? – sleep() est une méthode qui permet de maintenir le processus pendant quelques secondes ou à un certain temps…Lire plus
4. Pouvez-vous appeler un constructeur à-partir d’un autre constructeur dans le cas d’une classe qui contient plusieurs constructeurs ?

Au sein d’une même classe, il est possible d’utiliser le mot clé this () pour les constructeurs de la même classe. Exemple :

class Nbr 
{ 
     //constructeur par défaut 1
    Temp() 
    { 
        //appelle le constructeur 2
        this(8); 
        System.out.println("Le constructeur par défaut"); 
    } 
  
    //constructeur paramétré 2 
    Temp(int nbr) 
    { 
        System.out.println(nbr); 
    } 
} 

 

5. Si une classe se trouve dans un package, que devez-vous changer dans l’environnement du système d’exploitation pour pouvoir l’utiliser?

Vous devez ajouter un répertoire ou un fichier jar contenant les répertoires du package à la variable d’environnement CLASSPATH. Disons qu’une classe Etudiant appartient à un package com.test.fac; et se trouve dans le fichier c:\dev\com\test\fac\Etudiant.java. Dans ce cas, vous devez ajouter c:\dev à la variable CLASSPATH. Si cette classe contient la méthode main(), vous pouvez la tester à partir d’une fenêtre d’invite de commande comme suit:

c:\> java com.test.fac.Etudiant

 

 
 

6. Est-ce que l’ordre dans lequel les instructions catch pour FileNotFoundException et IOExceptipon sont écrites est important?
L’ordre est important. L’exception FileNoFoundException hérite de l’exception IOException. Les sous-classes d’exception doivent être capturées en premier.

 

Différence entre Arraylist et ListDifférence entre Arraylist et ListQuelle est la différence entre Arraylist et List ? – List est une interface qui contient des méthodes abstraites. Une interface est un contrat qui doit…Lire plus
7. Quelle est la principale différence entre Vector et ArrayList ?
La principale différence entre Vector et ArrayList est que Vector est synchronisé et thread-safe, alors que ArrayList n’est ni synchronisé ni thread-safe. ArrayList est rapide, ce qui est directement lié à la différence précédente. Puisque Vector est synchronisé, sa vitesse de lecture est lente et ArrayList n’est pas plus rapide que Vector.

 

8. Quelle est la différence entre une interface et une classe abstraite?
Une classe abstraite peut contenir du code dans le corp des méthodes qui possède, ce qui n’est pas autorisé dans une interface. Avec les classes abstraites, vous devez hériter de votre classe et Java n’autorise pas l’héritage multiple .Cependant, vous pouvez implémenter plusieurs interfaces dans votre classe.
Différence entre une interface et une classe abstraite en JavaDifférence entre une interface et une classe abstraite en JavaQuelle est la différence entre une interface et une classe abstraite? Les deux sont utilisées pour réaliser l’abstraction où nous pouvons déclarer des méthodes abstraites,…Lire plus
9. Quand devrait-on utiliser la méthode invokeLater()?
Cette méthode est utilisée pour s’assurer que les composants Swing sont mis à jour via le thread d’envoi d’événement.

 

Différence entre Héritage et CompositionDifférence entre Héritage et CompositionBien que l’héritage et la composition permettent la réutilisation du code, la principale différence entre la composition et l’héritage réside dans le fait que la…Lire plus
10. Expliquer l’utilisation du mot-clé « transient »?
Ce mot clé indique que la valeur d’une variable membre ne doit pas être sérialisée avec l’objet. Lorsque la classe sera désérialisée, cette variable sera initialisée avec une valeur par défaut de son type de données (i.e: zéro pour les entiers).

 

 
 
Partagez cet article

2 réflexions sur “10 Questions piège sur JAVA posées en entretien d’embauche

  • Avatar
    novembre 6, 2020 à 5:59
    Permalien

    Bonjour,

    vous avez une erreur dans la question 5 vous avez dans la commande java com.test.hr.Etudiant

    mais dans l’énoncé java com.test.fac.Etudiant

    cordialement

    Répondre

Laisser un commentaire

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