QCM Java 8 Corrigé – 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. L’API Java 8 qui prennent en charge les opérations d’agrégation séquentielles et parallèles?

A Big-data

B Hadoop

C SequenceProgramming

D Streams

D
Stream en Java est une séquence d’objets qui opère sur une source de données telle qu’un tableau ou une collection et supporte diverses méthodes et qui prend en charge diverses opérations d’agrégation séquentielles et parallèles. Ces opérations peuvent être effectuées sur les objets d’un Stream pour produire des résultats. Il permet d’enchaîner plusieurs opérations intermédiaires pour agréger les données, et les résultats sont recueillis en appliquant une opération finale sur les données reçues. Exemple:

Stream.of(1, 2, 3, 4, 5)          // Source du Stream(Données)
    .filter(x -> x * 2 == 0)      // Opération intermédiaire
    .collect(Collectors.toList()) // Opération finale


Voir: Les Stream en Java.

 

 
 

2. Les opérations de Stream dans java 8 peuvent être divisées en _____

A Opération finale

B Opération intermédiaire

C Les deux A et B sont vrais.

D Aucune de ces réponses n’est vraie.

C
La différence entre les opérations intermédiaires et finales est que les opérations intermédiaires(map(), filter(), distinct() par exemple) renvoient un résultat en tant que Stream et que les opérations finales(forEach(), toArray(), reduce(), collect(), min(), max(), count() par exemple) renvoient des valeurs non-Stream telles que primitive, objet ou collection ou peuvent ne renvoyer aucun résultat. Exemple:

Stream intStream = Stream.of(1, 2, 3, 4, 5, 6, 7);
Stream subStream = intStream.filter(value -> value > 3);
long n = subStream.count();
System.out.println(n);

Sortie:

4

Voir: Les Stream en Java.

 

 
 

3. Que fait Files.lines(Path path) ?

A Il lit tous les fichiers au chemin spécifié comme une chaîne

B Il lit toutes les lignes d’un fichier en tant que Stream

C Il lit les noms de fichiers au chemin spécifié

D Il compte le nombre de lignes pour les fichiers au chemin spécifié

B
Files.lines(Path path) lit toutes les lignes d’un fichier en tant que Stream.

 

 
 

4. À quoi sert l’objet Optional ?

A Optional est utilisé pour un argument facultatif

B Optional est utilisé pour représenter null avec une valeur absente

C Optional signifie qu’il n’est pas obligatoire pour la méthode de renvoyer l’objet

D Tout les réponses sont vrais

B
L’objet Optional est utilisé pour représenter null avec une valeur absente. Cette classe a diverses méthodes utilitaires pour faciliter le code à gérer les valeurs comme « existante » ou « absente » au lieu de vérifier les valeurs nulles.

Voir: La classe Optional en Java 8.

 

 
 

5. Quel est le successeur du moteur javascript Rhino dans Java 8?

A Narcissus

B TypeScript

C V8

D Nashorn

D
Nashorn est 2 à 10 fois plus rapide en termes de performances, car il compile directement le code en mémoire et transmet le bytecode à JVM. Nashorn utilise l’Invocation dynamique.

 

 
 

6. Que signifie SAM dans le contexte d’une interface fonctionnelle?

A Simple Abstract Markup

B Simple Active Markup

C Single Abstract Method

D Single Ambivalue Method

C
L’interface SAM signifie Single Abstract Method. L’interface fonctionnelle est également connue sous le nom de « interface SAM » car elle ne contient qu’une seule méthode abstraite.

 

 
 

7. Nashorn le nouveau moteur JavaScript est une implémentation de ____

A javax.engine.Engine

B javax.script.Engine

C javax.javaScript.Engine

D javax.script.ScriptEngine

D

 

 
 

8. Quel est le nouvel outil en ligne de commande pour le moteur JavaScript Nashorn dans java 8?

A jcs

B jfs

C jjs

D jss

C
L’outil de ligne de commande jjs est utilisé pour invoquer le moteur Nashorn. Vous pouvez l’utiliser pour interpréter un ou plusieurs fichiers script, ou pour exécuter un shell interactif.

 

 
 

9. Predicate se trouve dans quel package dans Java 8?

A java.util.predicate

B java.util.function

C java.util.objects

D java.util.predict

B
L’interface fonctionnelle PREDICATE est définie dans le package java.util.function. Elle améliore la gestion du code, aide à faire des tests unitaires séparés et contient certaines méthodes comme :

  • isEqual(Objet o)
  • and(Predicat o)
  • negate()
  • or(Predicat o)

 

 
 

10. Dans java 8, Function est ________

A Une classe

B Une interface

C Une expression lambda

D Un Objet

B
Java est un langage de programmation orienté objet, c’est-à-dire que tout en Java tourne autour des classes et des objets. Aucune fonction n’est présente de manière indépendante en Java. Elles font partie soit de classes ou d’interfaces. Et pour les utiliser, nous avons besoin soit de créer une classe, soit de l’objet du classe pour appeler cette fonction.

L’interface fonctionnelle en Java permet aux utilisateurs de pratiquer la programmation fonctionnelle en Java. Dans la programmation fonctionnelle, la fonction est une entité indépendante. La fonction peut faire tout ce qu’une variable est capable de faire, comme passer une fonction comme paramètre, une fonction retournée par une autre fonction, etc. Les fonctions en Python sont un exemple de programmation fonctionnelle.

Les interfaces fonctionnelles ont été introduites dans Java 8. Une interface fonctionnelle ne peut contenir qu’une seule méthode abstraite et peut contenir un nombre quelconque de méthodes statiques et par défaut (non abstraites). Les méthodes abstraites sont les méthodes qui ne nécessitent pas d’implémentation lors de leur déclaration et doivent être surchargées par la classe qui implémente l’interface.

L’interface Function appartient au package java.util.function qui a été lancé depuis Java 8, pour introduire la programmation fonctionnelle en Java. Elle permet de définir une fonction qui prend un argument et produit un résultat. Cette interface fonctionnelle prend donc deux génériques, à savoir les suivants :

  • T : indique le type de l’argument fourni en entrée.
  • R : indique le type de retour de la fonction.
public interface Function<T, R>{
    R apply(T t);
}

Exemple:

import java.util.function.Function;

public class Exemple {
  public static void main(String args[]) {
    //Fonction qui prend un nombre et en retourne la moitié
    Function<Integer, Double> division = n -> n / 2.0;

    // Appliquer la fonction pour obtenir le résultat
    System.out.println(division.apply(10));
  }
}

Sortie:

5.0

 

 
 

11. Lequel est un opérateur d’agrégation dans Java 8?

A filter

B forEach

C map

D Tout les réponses sont vrais

D
Stream prend en charge les opérations d’agrégation telles que filter, map, limit, reduce, find, match, etc.

 

 
 

12. Lequel est un processus qui accepte un argument et produit un résultat dans Java 8?

A Process

B Method

C JavaFunctions

D Function

D

 

 
 

13. Dans java 8, Predicate est ________

A Une classe

B Une interface

C Une expression lambda

D Un Objet

B
En Java 8, Predicate est une interface fonctionnelle qui accepte un argument et renvoie un booléen. Habituellement, elle est utilisée pour appliquer un filtre à une collection d’objets.

public interface Predicate<T> {
  boolean test(T t);
}

Exemple:

Predicate<Integer> supDe3 = x -> x > 3;

List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);

List<Integer> collect = list.stream()
  .filter(supDe3)
  .collect(Collectors.toList());

System.out.println(collect); // [4, 5]

 

 
 

14. Quelle méthode peut être utilisée pour vérifier null sur une variable Optional dans Java 8?

A isPresent()

B isNullable()

C isPresentable()

D isNotNull()

 

Laisser un commentaire

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