Giter Club home page Giter Club logo

java-interview's Introduction

Les top 25 questions Java dans un entretien technique

  • 1 . C'est quoi une classe Java? C’est une template définissant un type de données. Elle est utilisée pour créer des objets.

  • 2 . Qu’est-ce qu’un objet? C’est un élément d’une classe (instance)

  • 3 . Qu’es-ce qu’une méthode? C’est l’action qu’un objet peut faire.

  • 4 . Heap vs Stack

    • Heap: Lorsqu'un objet est créé, il est toujours créé dans Heap.
    • Stack: Lorsqu'une fonction est appelée, un bloc est réservé en haut de Stack pour stocker ses variables locales. aussi on trouve les références aux objets qui sont utilisés par cette méthode.
  • 5 . La différence entre JDK, JVM et JRE:

    • JDK : Java Devlopment Kit. C’est l’ensemble des packages et programmes qu’on utilise pour écrire nos propres programmes.
    • JRE : Java Runtime Environment . C’est la couche logicielle fournissant les packages et les ressources nécessaires pour qu’un programme java puisse s'exécuter.
    • JVM : Java Virtuel Machine. C’est l’environnement dans lequel le code Java (Byte Code) s’exécute.
  • 6 . Oracle JDK Vs OpenJDK

    • OpenJDK est une implémentation gratuite et open source de Java SE Platform Edition.
    • Oracle JDK nécessite une licence commerciale.
  • 7 . Est-ce que Java utilise les pointeurs? Non, Java importe une couche de sécurité en utilisant les références à la place des pointeurs.

  • 8 . les modificateurs d’accès en java: Ce sont les mots clés utilisés pour spécifier l’accès et la porté des objets,

    • public : les classes, attributs, les méthodes peuvent être utilisés par n’importe quel objet.
    • protected : Seules les classes du même packages ou des sous-classes qui peuvent utiliser les objets, attributs, méthodes avec ce modificateur.
    • private: c’est le modificateur le plus restreint, les objets, attributs, méthodes, variables ne peuvent être utilisées que dans la classes où ils sont déclarés.
    • « nothing » : pas de modificateur ou le modificateur par défaut, la visibilité est restreinte dans le même package.
  • 9 . Quelle est la différence entre inner class et subclass?

    • inner class : ou classe interne, est une classe définie (déclarée) à l’intérieur d’une classe.
    • subclass : sous classe, est une classe fille d’une classe mère.
  • 10 . Qu’est-ce qu’un constructeur? quels sont ses type? Un constructeur est un bloc de code utilisé pour initialiser un objet. On distingue deux types de constructeur : constructeur par défaut, et constructeur paramètré.

  • 11 . Overloading Vs Overriding?

    • Overloading : décrit le fait que deux méthodes (ou plus) peuvent avoir le même nom mais pas les mêmes parametres.
    • Overriding : décrit le fait que deux méthodes (ou plus) peuvent avoir le même nom et les mêmes parametres avec une relation mère-fille entre elles.
  • 12 . Quelle est la différence entre equals() et ==?

== equals()
Est un opérateur Est une méthode
Pour la comparaison des primitives et des objets (leurs réferneces) Pour la comparaison de contenu des objets
  • 13 . Qu'est-ce qu'un objet immuable ? Tu ne peux pas modifier les objets d'une classe immuable une fois qu'ils sont créés. (ex String)

  • 23 . Quelle est la différence entre les classes String, StringBuilder et StringBuffer en Java ?

String StringBuilder StringBuffer
String est une classe immuable. Mutable Mutable
... non synchronisée (not thread safe) synchronisée (thread safe)
  • 14 . Différence entre Arraylist et List

    • List est une interface qui contient des méthodes abstraites. Une interface est un contrat qui doit être respecté par les développeurs.
    • ArrayList est une classe qui implémente l’interface List et respecte ce contrat.
  • 15 . C’est quoi le Garbage Collector? C’est un mécanisme défini dans la JVM pour faire le ménage. Si un objet n’est plus utilisé, il sera automatiquement détruit pour libérer les ressources.

  • 16 . Qu’est-ce qu’une exception? C’est un problème qui se produit lors de l’exécution d’un programme, et qui nécessite un traitement spéciale pour le bon fonctionnement de l’application. Ceci peut être réalisé, soit par:

    • l’envoi de l’exception à un niveau supérieur (throws)
    • ou par la capture et le traitement au niveau local (try/catch)
  • 17 . Différence entre Exception et Error en java

    • Error représente les erreurs principalement causées par l’environnement d’exécution de l’application.
    • Exception représente les erreurs principalement causées par l’application elle-même.
  • 18 . C’est quoi une classe abstraite? Est une classe qu'on peut pas l'instancier. Pour l’exploiter il faut absolument passer par l’héritage.

  • 19 . C’est quoi une interface? C’est une classe abstraite, qui permet de regrouper un certain nombre de méthodes sans qu’elle soit instanciée. Pour l’exploiter il faut l’implémenter

  • 20 . Quelle est la différence entre une classe abstraite et une interface ?

Classe abstraite Interface
Les constructeurs sont autorisés Une interface ne peut pas avoir de constructeur.
Les méthodes static sont autorisées Les méthodes static ne sont pas autorisées
Une classe ne peut avoir qu'un seul parent abstrait Une classe peut implémenter plusieurs interfaces
Une classe Java abstraite peut avoir des membres de classe private et protected Les membres d'une interface Java sont public par défaut
  • 21 . Différence entre une méthode statique et non statique
Méthode statique Méthode non statique
appartient à une classe appartient à un objet d’une classe.
ne peut accéder qu’aux membres statiques. peut accéder aux membres statiques et non statiques,
  • 22 . Ordre d'execution d'un programme java: static block -> Initialization block -> Constructor.

  • 24 . size() vs length La méthode size() fonctionne avec les collections, tandis que la propriété length fonctionne avec les tableaux.

  • 25 . Quelles sont les étapes pour établir une connexion à une base de données?

    • Enregistrer le driver
    • Créer la connexion
    • Créer le statement
    • Exécuter la requête
    • Récupérer les résultats ou l’état de l’exécution
    • Fermer la connexion

java-interview's People

Contributors

zakariaalla avatar

Stargazers

 avatar Marouane Ougnou avatar

Watchers

 avatar

Forkers

ksirmarwane

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.