html interview questions and answersLa típica empresa que busca contratar a un programador de Java busca a alguien que pueda programar bien más allá del nivel de una clase introductoria de Java. Los entrevistadores formulan preguntas que no son necesariamente rebuscadas pero que están destinadas a resolver si el candidato posee un conocimiento profundo de la materia.

¿Tiene una entrevista de Java dentro de poco? ¡Repase con este curso!

Las preguntas siguientes son ejemplos de lo que un programador java puede esperar de una entrevista técnica.

1. ¿Qué significa la palabra clave static, y dónde puede ser usada?

static puede ser usada de 4 formas:

2. ¿Cómo trataría con problemas de dependencia?

Esta pregunta es ambigua a propósito. Puede referirse a resolver problemas de inyección de dependencias (Guice es una herramienta estándar que ayuda con esto). También puede referirse a proyectar dependencias – usando librerias externas, de terceras personas. Herramientas como Maven y Gradle ayudan a administrarlas. Debería considerar aprender más sobre Maven para preparar esta pregunta.

3. Quiere crear una clase simple que sólo tenga tres variables miembro. Dígame cómo haría esto.

Este problema parece fácil a simple vista, y crear una clase sencilla se explica en clases como Programación Orientada a Objetos.

Pero un programador experimentado reconocerá que es necesario saber cómo sobrescribir correctamente los métodos hashCode() y equals() (usando, por ejemplo, EqualsBuilder y HashCodeBuilder, en la libería Apache Commons). Puede encontrar temas más avanzados como estos en el curso Programación Orientada a Objetos II (Spring MVC).

4. ¿Qué hace la palabra clave synchronized? Dígame cómo usarla para establecer una única variable sin condiciones.

synchronized le dice a un método que tiene que mantener el bloqueo del objeto al ejecutar. Si se usa alrededor de un bloque, como synchronized (obj) { … }, bloqueará el objeto obj antes de ejecutar ese bloque.

5. ¿Qué es el borrado de tipos?

El borrado de tipos es un fenómeno JVM que significa que en tiempo de ejecución no se tiene conocimiento de los tipos de objetos genéricos, como List<Integer> (el compilador ve a todos los objetos Lista teniendo el mismo tipo, List<Object>).

6. ¿Cuándo y por qué son los getters y setters importantes?

Mientras que una clase avanzada Java puede tratar el tema, el concepto principal que hay que saber para las entrevistas es que los setters y getters pueden formar parte de interfaces y pueden esconder detalles de la implementación, de forma que no hay que hacer a las variables miembro públicas (lo que haría a tu clase peligrosamente frágil).

7. ¿Qué diferencias hay entre Map, Hashtable, HashMap, TreeMap, ConocurrentHashMap, LinkedHashMap?

8. ¿Cuáles son las diferencias entre interfaces, clases abstractas, clases e instancias?

9. Si necesitara proporcionar una GUI para su programa Java, ¿qué utilizaría?

Hay muchas opciones, desde aplicaciones web a aplicaciones locales. Normalmente, los entrevistadores se refieren a Swing ú otras herramientas de interfaz gráfica como esta.

10. ¿Cómo prueba usted su código?

Deberá hablar de su experiencia usando liberías como JUnit, Mockito, y Selenium. Aunque no tenga un gran conocimiento sobre pruebas, ser capaza de hablar sobre estas librerías es un buen primer paso.

El Desarrollo Orientado a Pruebas (TDD) es muy popular en este momento, y sería muy bueno que hablara de cualquier experiencia que tenga relacionada con ello.

Otros cursos que podrían interesarle:

Pero tenemos muchos más, ¡consulte nuestros cursos de Tecnología en Español!

Top courses in Java

Java Programming for Complete Beginners
in28Minutes Official
4.4 (5,218)
Java Programming Masterclass for Software Developers
Tim Buchalka, Tim Buchalka's Learn Programming Academy, Goran Lochert
4.6 (99,860)
Bestseller
Design Patterns in Java
Dmitri Nesteruk
4.3 (2,757)
Complete Java SE 8 Developer Bootcamp - OCA Prep Included
Intertech Training, Jeff Jensen
4.5 (4,236)
Bestseller
Java Memory Management
Matt Greencroft, Virtual Pair Programmers
4.5 (3,470)
Bestseller
Java Puzzles to Eliminate Code Fear
Imtiaz Ahmad
4.5 (1,213)
Java for Absolute Beginners
Nick H
4.6 (1,863)

More Java Courses

Java students also learn

Empower your team. Lead the industry.

Get unlimited access to 3,500+ of Udemy’s top courses for your team. Learn and improve skills across business, tech, design, and more.

Request a demo