1. Bases de Java
1.1 Collection et carte
(1) Maîtriser le système d'héritage de Collection et de carte.
(2) Maîtriser les caractéristiques et les principes d'implémentation de ArrayList, LinkedList, Vector, Stack, PriorityQueue, HashSet, LinkedHashSet, TreeSet, HashMap, LinkedHashMap, TreeMap, WeakHashMap, EnumMap, TreeMap et HashTable.
(3) Maîtriser les principes de mise en œuvre et les scénarios applicables de CopyOnWriteArrayList, CopyOnWriteArraySet et ConcurrentHashMap.
1.2 IO
(1) Maîtriser le système d'héritage d'InputStream, OutputStream, Reader et Writer.
(2) Flux d'octets principaux (FileInputStream, DataInputStream, BufferedInputStream, FileOutputSteam, DataOutputStream, BufferedOutputStream) et flux de caractères (BufferedReader, InputStreamReader, FileReader, BufferedWriter, OutputStreamWriter, PrintWriter, FileWriter), et utilisez-les habilement.
(3) Maîtriser les principes de mise en œuvre et l'utilisation de NIO.
1.3 Exceptions
(1) Maîtriser le système d'héritage Throwable.
(2) Maîtriser le principe de fonctionnement des exceptions.
(3) Comprendre les exceptions vérifiées courantes (telles que FileNotFoundException), les exceptions non vérifiées (telles que NullPointerException) et les erreurs (telles que IOError).
1.4 Multi-threading
(1) Maîtriser les caractéristiques et le champ d'application des trois types de pools de threads que les exécuteurs peuvent créer (JAVA8 en ajoute un, totalisant quatre ).
(2) Maîtrisez le mécanisme de synchronisation multi-thread et utilisez-le habilement.
1.5 Socket
(1) Maîtriser le principe de la communication Socket.
(2) Maîtrise de l'utilisation du multi-threading combiné à Socket pour la programmation.
2. Machine virtuelle Java
2.1 Division de la zone mémoire JVM
(1) Maîtriser le compteur de programme, le tas, virtual Les fonctions et principes de base de la pile machine, de la pile de méthodes locale, de la zone de méthode (supprimée dans JAVA8) et du métaespace (nouveau dans JAVA8).
(2) Maîtriser la division du tas : les fonctions et principes de fonctionnement de la nouvelle génération (Eden, Survivor1, Survivor2) et de l'ancienne génération.
(3) Paramétrage et réglage des paramètres de mémoire JVM maître.
2.2 Chargement des classes
(1) Maîtriser les étapes de chargement des classes : chargement, liaison (vérification, préparation, analyse), initialisation, utilisation et déchargement.
(2) Maîtriser la classification des chargeurs de classes et de leurs applications : chargeur de classe de démarrage, chargeur de classe d'extension, chargeur de classe d'application, chargeur personnalisé.
3. J2EE
(1) Maîtriser les objets, les actions, les fonctionnalités et les principes de fonctionnement intégrés de JSP.
(2) Maîtriser les caractéristiques et les principes de fonctionnement de Servlet.
(3) Maîtriser les principes d'implémentation IOC et AOP du framework Spring (réflexion et proxy dynamique).
(4) Maîtriser les principes de fonctionnement d'au moins un framework MVC (Spring MVC, Struts, etc.) et l'utiliser habilement.
(5) Maîtriser les principes de fonctionnement d'au moins un framework ORM (Hibernate, MyBatis, etc.) et l'utiliser habilement.
4. Structures de données et algorithmes
(1) Maîtriser les caractéristiques des tableaux linéaires et des arbres et les utiliser habilement.
(2) Maîtriser les algorithmes courants de tri et de recherche :
①Tri par insertion (tri par insertion directe, tri Hill),
②Tri par sélection (tri par sélection directe, tri par tas),
③Tri par échange (tri à bulles, tri rapide),
④Tri par fusion,
⑤Recherche séquentielle,
⑥Recherche binaire,
⑦Hash recherche.
(3) Maîtrise de l'utilisation d'idées courantes d'algorithmes de tri et de recherche pour résoudre des problèmes de programmation.
(4) Comprendre plusieurs algorithmes de base : algorithme gourmand, stratégie diviser pour régner, programmation dynamique.
5. Réseau informatique
(1) Maîtriser la structure en couches du réseau et les caractéristiques fonctionnelles de chaque couche.
(2) Maîtriser les principes de communication de TCP/IP (trois poignées de main, quatre vagues)
6. complexité Écriture d'instructions SQL.
(2) Optimisation de la base de données master (niveau SQL et niveau conception des tables). (3) Maîtriser au moins un produit de base de données. (4) Être familier avec le développement de bases de données dans des situations de forte concurrence et de Big Data.7. Technologie Web
(1) Maîtriser le principe de fonctionnement d'AJAX.
(2) Être familier avec au moins un framework JS (tel que JQuery).8. Modèles de conception
(1) Familiarisez-vous avec les modèles de conception courants.
(2) Appliquera la théorie des modèles de conception au développement réel.9. Linux
(1) Maîtrise de l'utilisation des commandes Linux courantes.
(2) Familiarisez-vous avec les concepts et fonctionnalités de base du système d'exploitation Linux. (3) Familier avec les scripts Shell.10. Système d'exploitation
(1) Maîtriser la gestion des processus du système d'exploitation.
(2) Comprendre les E/S du système d'exploitation.11. Expressions régulières
(1) Maîtriser les symboles d'expression régulière courants.
(2) Utilisez habilement des expressions régulières pour résoudre des problèmes pratiques (tels que la correspondance de numéros de téléphone, d'adresses e-mail, de noms de domaine, etc.). Articles connexes :
8 Programme d'entretien d'ingénieur de développement senior Java
Syllabus d'entretien d'ingénieur logiciel senior Java
Tutoriel vidéo avancé sur le développement de composants et orienté objet js
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!