Entrevistador: 5 preguntas de la entrevista Java que la mayoría de los entrevistadores harán. Todos ustedes dudan de su vida. ¿Aún quieren pedirme un salario mensual de 20k?

Este artículo es una experiencia real cara a cara de un amigo fan de hace algún tiempo, la cara es Mogujie

Introducción de antecedentes:

Experiencia laboral: 5 años de desarrollo Java

Formación académica: Universidad de Correos y Telecomunicaciones de Chongqing (especialidad en seguridad de la información)

Experiencia laboral: el negocio principal es fabricar billeteras de pago móviles en Camboya (proyecto de pago agregado, para que los chinos locales en Camboya puedan usar WeChat y Alipay para pagar)

Nota: El siguiente contenido es un intercambio real cara a cara. Puede leerlo detenidamente para ver si puede responder estas preguntas de la entrevista a satisfacción del entrevistador. Al mismo tiempo, compartiré algunos consejos para la entrevista para todos, principalmente para decirle cómo prepararse Reanude, cómo prepararse para la entrevista, las preguntas reales de la entrevista de Dachang 2020 (incluidas las respuestas) y qué materiales de aprendizaje vale la pena consultar.

No hay mucho que decir, echemos un vistazo a su viaje de entrevista con la experiencia de la entrevista de este amigo fan. Además, las respuestas a las preguntas de la entrevista y los materiales de revisión relacionados con lo siguiente se comparten en la versión completa en PDF, seguimiento + mensaje privado tras comentario Puedo "entrevistar" ~

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Entrevistador: preséntate

Programador: Hola, me gradué de XXX y he estado trabajando durante 5 años. El trabajo más reciente es el principal responsable de XXX (ver la introducción de antecedentes más arriba)

Entrevistador: Al ver que tiene competencia escrita en las características avanzadas del lenguaje Java, vamos a presentar brevemente el proceso de inyección de Bean SpringBean.

Programador: proceso de inyección de frijoles ... Primero, él y el objeto del archivo de configuración (anotación) ... Um, todavía no estoy familiarizado con este aspecto

Entrevistador: Está bien, está bien ... Sigamos hablando

Programador: sonríe torpemente

Entrevistador: Creo que escribió que conoce algunas funciones avanzadas. ¿Puede darme una breve introducción a las nuevas funciones de Java 8, o cuáles son las nuevas funciones en las que es bueno?

Programador: Java 8 es principalmente una expresión lambda en términos de sintaxis. Se puede utilizar para programación funcional. La interfaz funcional significa que esta interfaz tiene un solo método .....

Entrevistador: ¿Hay algo más?

Programador: también hay algunas operaciones de transmisión, como: API de transmisión, que puede simplificar la semántica de programación y hacerla más clara. Por ejemplo, al realizar una función de filtro, puede vincular datos para filtrar los datos que no cumplen con los requisitos. Solo escriba las palabras anteriores Un bucle for no parece ser tan fácil de entender ... y luego se realizan algunas optimizaciones en la estructura de datos, como ConcurrentHashMap, su implementación subyacente se cambia a un árbol rojo-negro ...

Entrevistador: Lo que acaba de decir son algunas optimizaciones, le pregunté sobre algunas de sus nuevas funciones avanzadas

Programador: Sonríe de nuevo ...

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Entrevistador: Acaba de mencionar su procesamiento de transmisión. En comparación con foreach o basic for loop, ¿está optimizado para la eficiencia o es más lento? ¿Alguna vez has ido a averiguarlo?

Programador: Uh ... no

Entrevistador: Creo que dijo que tiene cierto conocimiento de la programación concurrente. ¿Puede hablarme sobre los principios de implementación subyacentes de Synchronized y Lock?

Programador: Ah ... Synchronized es un soporte de nivel semántico. Está en un encabezado de objeto. Tiene una marca de palabra de marca para registrar su bloqueo. El bloqueo muestra que el bloqueo utiliza su AQS subyacente. Una cola de primero en entrar, primero en salir de una lista doblemente enlazada. Solo el subproceso que actualmente tiene el bloqueo es una contraparte. Una vez que se libera, usará una operación de giro para hacer que el siguiente subproceso sea el encabezado de la cola.

Entrevistador: ¿Cuáles son los niveles de los dos? ¿Es el nivel jdk o el nivel JVM, o?

Programador: Synchronized está en el nivel de JVM y Lock está en el nivel de jdk

Entrevistador: Mencionaste Sincronizado hace un momento. ¿Alguna vez has entendido cómo se implementan su método de bloqueo, objeto de bloqueo y bloqueo de código de bloqueo?

Programador: Uh ... nadie

Entrevistador: ¿Conoce el proceso de actualización del bloqueo de sincronización?

Programador: No ...

Entrevistador: Acabo de mencionar a Lock, ¿puede darme una breve introducción a CAS?

Programador: CAS es para comparar e intercambiar

Entrevistador: Sí, basta con mencionar esto. ¿Tiene alguna aplicación práctica en el proceso de desarrollo real? Un proceso aplicado al bloqueo optimista

Programador: Sí, por ejemplo, cuando actualizo la base de datos, si una base de datos usa bloqueo optimista, también uso una operación de giro para actualizarla hasta que tenga éxito.

Entrevistador: ¿ La eficiencia del efecto es muy baja? Si no puede obtener este bloqueo todo el tiempo, puede causar un bloqueo de subprocesos, o afectará mucho la eficiencia en escenarios de alta concurrencia. ¿Se considera este problema?

Programador: También se considera ..... Si la concurrencia es alta, realmente no es adecuado usar spin, esta vez es más adecuado usar bloqueo pesimista

Entrevistador: Entonces háblame sobre el grupo de hilos

Programador: El grupo de subprocesos es ... Hablaré primero acerca de su flujo de trabajo, y luego se enviará primero. Primero ingresará al núcleo. Si el libro de subprocesos es más grande que coreSize, ingresará a una cola de bloqueo. Cuando esté lleno, creará algunos subprocesos nuevos y entrará en el grupo más grande; cuando el número de subprocesos, incluso maxSize, supere, ejecutará una estrategia de rechazo. Hay cuatro estrategias de rechazo con las que viene JDK: una es descartar directamente; Uno es lanzar una excepción; el otro debe ser ejecutado por el hilo de la persona que llama; el otro es descartar el hilo con el tiempo de espera más largo en la cola de bloqueo

Entrevistador: Creo que su currículum también menciona competencia en el ajuste de JVM. ¿Puedo preguntarle sobre algunos de los pasos básicos para ajustarlo?

Programador: Ah ... un poco de sangre, los pasos básicos de la puesta a punto ... Por ejemplo, empiezo desde ... um ... empiezo desde OOM ... Si se produce una excepción OOM en producción, La primera es juzgar si ocurre en el montón o en el metaespacio, y ... tiene otro tipo que tiene una eficiencia de GC demasiado baja ...

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Nota: Debido al contenido excesivo, para evitar afectar la experiencia de lectura, no codificaré las siguientes entrevistas y las reemplazaré con capturas de pantalla.

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Entrevistador: Creo que básicamente te vas después de quedarte un año, ¿puedes decirme el motivo de tu partida?

Programador: .........

Entrevistador: ¿Cuál es su plan de carrera?

Programador: Ir a la industria financiera de Internet

Entrevistador: ¿Qué me quieres preguntar?

Programador: pregunté algo que no sabía mucho antes

Resumen de la entrevista: Se puede ver en este entrevistador que el entrevistador no preguntó profundamente, de lo contrario se estima que el 80% del contenido no será respondido. Básicamente son cosas básicamente básicas. El contenido de abajo no se pregunta mucho, así que escribí un Dubbo En el currículum, el entrevistador no le preguntaba Spring Cloud, contenedor Hystrix, etc., incluso el autobús puede preguntar muchas cosas, una vez preguntado, es realmente vergonzoso, preguntar sobre la vida dudar.

Cómo prepararse para una entrevista

En primer lugar, como este amigo, puede votar por currículums de una pequeña empresa, ir a una entrevista de alfabetización, ver lo que no sabe, qué conocimiento le falta y luego ir a casa para hacer una revisión de la entrevista.

Optimice su currículum, no escriba un Dubbo, y entonces no podrá responder si el entrevistador pregunta un poco más. Preste atención a los siguientes tres puntos en su currículum:

(1) Preste atención a la distinción: comprender, familiarizarse, ser competente, no escribir al azar, muchas preguntas del entrevistador se basan en la descripción del currículum;

(2) El conocimiento profesional y la experiencia del proyecto no son muy refinados, especialmente la experiencia del proyecto debe escribir lo que está familiarizado y tener contenido para decir, no crea que cuanto más escriba, mejor;

(3) Para familiarizarse con el contenido de su currículum y dominarlo con precisión, es mejor leer más de su currículum.

En segundo lugar, también puede prepararse en la etapa inicial, cepillar más preguntas de la entrevista, ver más materiales de aprendizaje o tutoriales en video, etc. Aquí también comparto algunos de los materiales de aprendizaje que he recopilado y las preguntas reales de la entrevista para compartir con ustedes, [Comentarios + Seguir] Después de eso, mensaje privado "Entrevista" o vea a continuación para obtenerlo directamente ~

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

Acabado del contenido principal de Java

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

Preguntas reales de la entrevista

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Sugerir

Puedes resumir y ampliar el conocimiento de los conceptos básicos de Java, JVM, programación concurrente, MySQL, Redis, Spring, Spring Cloud, etc., y luego operar, de lo contrario no podrás aprender solo recordando, aquí también proporciono algunos mapas cerebrales para compartir dar a todos:

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Entrevistador: Pedí 25K, así que usé 2 poderes de éxito para pedirte que dudes de la vida (Java)

 

Al final

No importa qué empresa sea, concede una gran importancia a la fundación. Las grandes empresas prestan más atención a la profundidad y amplitud de la tecnología. La entrevista es un proceso de selección de dos vías. No vaya a la entrevista con una mente temerosa, que no es propicia para su propio desempeño. Al mismo tiempo, no solo debes prestar atención al salario, sino también si realmente te gusta esta empresa y si realmente puedes hacer ejercicio.

Para los puntos técnicos de la entrevista anterior, también comparto información aquí. Los amigos que lo necesiten pueden [comentar + seguir] y enviar un mensaje privado a la "entrevista" o escanear directamente lo siguiente para obtener ~

¡Espero que todos puedan obtener una oferta satisfactoria en Jinjiu Yinshi!

Supongo que te gusta

Origin blog.csdn.net/m0_46757769/article/details/108979733
Recomendado
Clasificación