Introduction aux questions d'entrevue Java pour les candidats plus récents

Si vous recherchez un emploi lié à Java, vous devez vous préparer aux questions d'entrevue Java pour les candidats plus récents. Bien que chaque entretien soit différent et que la portée d'un travail soit également différente, nous pouvons vous aider avec les meilleures questions et réponses d'entrevue Java, qui vous aideront à franchir le pas et à réussir dans votre entrevue Java.

Vous trouverez ci-dessous les principales questions d'entrevue Java qui sont fréquemment posées lors d'une interview.

1. Différence entre String Buffer et String Builder en Java

Répondre:
C'est l'une des questions préférées des enquêteurs, mais les réponses sont souvent misérables par les candidats.

Voici quelques différences notables à propos de String Buffer et String Builder pour une meilleure compréhension

1) StringBuilder est une version non synchronisée de la classe StringBuffer. Méthodes dans StringBuilder
Par exemple, toutes les versions surchargées de la méthode append () ne sont pas synchronisées.
2) StringBuilder fonctionne plus rapidement que StringBuffer en raison de l'absence de surcharge d'acquisition et de libération des verrous associés aux méthodes synchronisées.
3) StringBuffer est considéré comme thread-safe et StringBuilder ne l'est pas car si une telle synchronisation est requise, il est préférable d'utiliser la classe StringBuffer. Les instances de classe StringBuilder ne peuvent pas être partagées entre plusieurs threads
4) StringBuffer est l'ancienne classe; il est incorporé dans JDK depuis sa toute première version, tandis que StringBuilder est une classe relativement récente
5) Le fait le plus important concernant StringBuffer et StringBuilder est que, lorsque la concaténation de chaînes est effectuée à l'aide de l'opérateur +, Java convertit en interne cet appel en classe de méthode append () StringBuilder correspondante. Par exemple, "un" + "deux" + "trois" sera converti en nouveau StringBuilder () .append ("un"). Append ("deux"). Append ("trois").

2. Programme Java pour trouver le plus grand et le plus petit nombre dans un tableau d'entiers

Répondre:
Un simple pointeur 5 pour répondre à cette question

  • Créez un fichier source Java avec le nom MaximumMinimumArrayDemo.java et copiez le code à compiler et à exécuter dans votre IDE préféré
  • Créez une méthode appelée le plus grand et le plus petit (nombres int ()) pour imprimer le plus grand et le plus petit nombre de tableaux int passés au programme.
  • Utilisez deux variables, la plus grande et la plus petite, pour stocker les valeurs maximale et minimale du tableau. Initialement, le plus grand est initialisé avec Integer.MIN_VALUE et le plus petit est initialisé avec Integer.MAX_VALUE.
  • Pour toutes les itérations de la boucle, comparez le nombre actuel du plus grand au plus petit et mettez-les à jour en conséquence.
  • Si un nombre est plus grand que le plus grand, il ne peut pas être plus petit que le plus petit, ce qui signifie que vous n'avez pas besoin de vérifier si la première condition est vraie, c'est pourquoi nous avons utilisé un bloc de code if-else, où la partie else ne sera que exécuter si la première condition n'est pas vraie.

La logique pour trouver le plus grand élément d'un tableau en Java est donnée ci-dessous.

Au lieu d'affecter une variable avec Integer.MAX_VALUE, nous avons attribué le premier élément du tableau.

3. Quelle est la différence entre C ++ et Java?

Répondre:
C ++ et Java ne sont similaires que dans les comparaisons syntaxiques. Voici les différences:

    • Java est multithread
    • Java n'a pas de pointeurs
    • Java a une gestion automatique de la mémoire (garbage collection)
    • Java est indépendant de la plateforme
    • Java a un support intégré pour la documentation des commentaires
    • Java n'a pas de surcharge d'opérateur

Java ne fournit pas d'héritages multiples

  • Il n'y a pas de destructeurs en Java

4. Différence entre la classe abstraite et l'interface?

Répondre:
Héritage multiple:

Une classe abstraite ne peut hériter que d'une seule classe abstraite; cependant, dans l'interface, une classe peut implémenter plusieurs interfaces. Cela prouve que l'interface prend en charge l'héritage multiple, contrairement à la classe abstraite.

La mise en oeuvre:

Une classe abstraite peut fournir du code par défaut car elle contient à la fois des membres incomplets et complets tandis qu'une interface ne peut pas fournir de code car elle ne contient que des membres incomplets

Des champs
Nous pouvons définir des champs et des contraintes dans une classe abstraite alors qu'aucun champ ne peut être défini dans une interface

La vitesse
Une classe abstraite est rapide par rapport à une interface car cette dernière nécessite plus de temps pour trouver la méthode dans sa classe correspondante

Usage
Une classe abstraite apparaît lorsque nous voulons partager une fonctionnalité commune dans une relation parent-enfant, tandis que l'interface est utilisée pour définir et appliquer le polymorphisme, le découplage et la normalisation

5. Différence entre un modificateur ou un mot-clé privé, protégé, public et de package en Java

Répondre:
privé vs public vs protégé vs package en Java

Java a quatre modificateurs d'accès à savoir; niveau privé, protégé, public et package

l'accès au niveau du package est considéré comme le niveau d'accès par défaut offert par Java si aucun modificateur d'accès n'est identifié

Ces modificateurs d'accès fonctionnent pour restreindre l'accessibilité d'une classe, d'une méthode ou d'une variable à laquelle ils s'appliquent

Les fonctionnalités de chaque modificateur d'accès sont décrites ci-dessous et leur différence les unes par rapport aux autres

mot-clé privé en Java

  • Le modificateur privé en java peut être appliqué au champ membre, à la méthode ou à la classe imbriquée en Java.
  • On ne peut pas utiliser le modificateur privé sur la classe de niveau supérieur.
  • les variables, méthodes et classes privées ne sont accessibles que sur la classe sur laquelle elles sont déclarées.
  • privates fournit la forme la plus élevée d'API Java d'encapsulation et doit être utilisée autant que possible.

Il est préférable de coder en Java pour déclarer une variable privée par défaut. Une méthode privée ne peut être appelée qu'à partir de la classe où elle a déclaré

package ou niveau d'accès par défaut en Java

  • package est un mot clé utilisé pour déclarer un package en Java; un package est un répertoire auquel appartient une classe en Java.
  • le package ou le niveau d'accès par défaut est le deuxième modificateur d'accès restrictif le plus élevé après privé et toute variable, méthode ou classe déclarée comme package-privé n'est accessible que sur le package auquel il appartient.

La bonne chose à propos du modificateur par défaut est que la classe de niveau supérieur peut également être privée de package s'il n'y a pas de modificateur d'accès au niveau de la classe.

mot-clé protégé en Java

La différence entre mot-clé privé et mot-clé protégé est que la méthode protégée, la variable ou la classe imbriquée sont non seulement accessibles à l'intérieur d'une classe, à l'intérieur du package mais également à l'extérieur du package sur une sous-classe.
Si vous déclarez une variable protégée, tout le monde peut l'utiliser si elle étend votre classe. La classe de niveau supérieur ne peut pas également être protégée.

mot-clé public en Java

Public est le modificateur d'accès le moins restrictif dans le langage de programmation Java et sa mauvaise pratique pour déclarer un champ, une méthode ou une classe par défaut public car une fois que vous le rendez public, il est très difficile de modifier la structure interne de la classe car cela affecte tous les clients utilisant il.

Rendre la variable de classe ou d'instance publique a également violé le principe de l'encapsulation qui n'est pas bon du tout et affecte mal la maintenance

Article recommandé

Cela a été un guide pour la liste des questions et réponses d'entrevue Java afin que le candidat puisse réprimer facilement ces questions d'entrevue Java. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. Questions d'entretiens pour le poste de Java Developer
  2. Questions d'entretiens importantes sur le multi-threading Java
  3. Questions et réponses d'entrevue J2EE
  4. Questions et réponses sur l'interview sur Java String
  5. Questions et réponses d'entrevue Java 8