La capacitación en TI de Yunnan comparte puntos de conocimiento de Java y los resume
Después de tantos años de desarrollo, y combinado con algo de experiencia en entrevistar a desarrolladores, creo que lo principal para J2SE es dominar el siguiente contenido.
1. Relacionado con JVM (incluidas las características de cada versión)
Para aquellos que son nuevos en esto, el conocimiento relacionado con JVM no requiere necesariamente una comprensión profunda. . Sin embargo, para un desarrollador senior con más de 3 años de experiencia, es casi inaceptable no conocer JVM.
JVM es la base de funcionamiento. Es difícil creer que las personas que no saben nada sobre JVM puedan entender el lenguaje a fondo. Cuando entrevisto a desarrolladores con más de 3 años de experiencia, JVM es casi una pregunta obligada. Por supuesto, JVM no es la única pregunta de la entrevista que determina la capacidad técnica, pero puede demostrar el nivel de capacidad de desarrollo.
En la categoría JVM, creo que el conocimiento que es necesario dominar es:
Modelo y estructura de memoria JVM
Principios de GC, ajuste del rendimiento
Tuning: ThreadDump, análisis de la estructura de la memoria
estructura de código de bytes binario de clases, sistema de carga de clases, proceso de carga de clases, proceso de creación de instancias
Proceso de ejecución del método
Nuevas funciones proporcionadas por cada actualización de versión importante (es necesario comprenderlas brevemente)
El funcionamiento de 2. (básico esencial)
Esto puede parecer muy simple, el funcionamiento del programa Who ¿no? Pero muchas veces, simplemente ejecutamos el programa a través del IDE. ¿Cómo ejecuta el programa el IDE subyacente? Mucha gente no lo entiende.
Este punto de conocimiento es lo más básico que los desarrolladores deben dominar. Para los principiantes, el primer paso es enseñarles cómo ejecutar programas en la línea de comandos, pero muchas personas usan IDE una vez que terminan de aprender. , olvídate de esto. ¿Por qué enfatizar la necesidad de saber esto? Después de conocer el método de inicio más puro, puede analizar cuántos directorios se iniciaron en ese momento, cómo fue el nombre de la ejecución, cuáles fueron los parámetros y si faltaron archivos cuando hubo un inicio. problema. Esto le ayudará a resolver esos problemas extraños que pueden estar relacionados con el medio ambiente durante el desarrollo real.
El conocimiento que necesita dominar aquí es:
El uso de archivos compilados en c como comandos de archivos de clase, cómo iniciar la clase con el paquete en la línea de comando
El programa Varias rutas involucradas (clasth, .library.path, directorio de inicio de ejecución, etc.)
3. Tipo de datos
No hay mucho que decir sobre esto, Es solo lo básico. Dominio de tipos y tipos de objetos. Capacitación/sugerencia de TI de Yunnan para que pueda aprender más sobre cómo JDK convierte automáticamente, incluido el boxeo y unboxing, etc., y tenga cuidado de evitar juicios sobre la igualdad de tipos después del boxeo
Puntos de conocimiento principales:
Tipos básicos: int, long, float, double, boolean. . .
Tipos de objetos correspondientes: conversión, boxing y unboxing de Integer y otros tipos a tipos básicos
Tipos de objetos: iguales, código hash
Características del tipo String p>