¿Preguntas y respuestas comunes en las entrevistas sobre desarrollo de software?
El significado de la interfaz
Estandarizado, extensible, devolución de llamada
El significado de la clase abstracta
Proporcionar un ** público para sus subclases * escriben, encapsulan contenido repetido en subclases y definen métodos abstractos. Aunque las subclases tienen diferentes implementaciones, las definiciones son consistentes
El papel de las clases internas
Las clases internas pueden utilizar múltiples. instancias, cada instancia tiene su propia información de estado y es independiente de la información de otros objetos periféricos.
En una única clase externa, varias clases internas pueden implementar la misma interfaz de diferentes maneras o heredar la misma clase.
El momento en que se crea el objeto de clase interna no depende de la creación del objeto de clase externa.
La clase interna no tiene la confusa relación "es-un", es una entidad independiente.
Las clases internas proporcionan una mejor encapsulación, excepto la clase periférica, otras clases no pueden acceder
Si las subclases pueden anular los métodos estáticos de la clase principal
Los métodos estáticos pertenecen a clases, mientras que la herencia y la anulación son relativas a los objetos.
Si hay métodos estáticos en la clase principal en la subclase, solo se puede decir que oculta los métodos estáticos de la clase principal.
Características de la máquina virtual Java
General Si un lenguaje de alto nivel quiere ejecutarse en diferentes plataformas, al menos debe compilarse en diferentes códigos de destino. Con la introducción de la máquina virtual Java, no es necesario volver a compilar el código Java para ejecutarlo en diferentes. plataformas
p>Bajo qué circunstancias el mecanismo de recolección de basura eliminará los objetos
El método más básico del mecanismo de recolección de basura de Java es el reciclaje generacional. Las áreas de la memoria se dividen en diferentes generaciones. Joven, antiguo y permanente. Cuando un objeto sobrevive el tiempo suficiente, se copiará a la generación anterior. Se pueden utilizar diferentes algoritmos de recolección de basura para diferentes generaciones. El punto de partida para la división de generaciones es la ley estadística obtenida tras estudiar el tiempo de supervivencia de los objetos en la aplicación. En términos generales, la mayoría de los objetos de una aplicación tienen una vida útil corta. Por ejemplo, el tiempo de supervivencia de las variables locales es sólo durante la ejecución del método. En base a esto, el algoritmo de recolección de basura para la generación joven puede ser muy específico.
La diferencia entre == e igual
== es un operador y igual es un método, y este método es un método en Objeto. Podemos anular el método igual. propia lógica de comparación
¿Por qué si el método igual de un objeto se compara con verdadero, entonces el valor int devuelto por su método de código hash también debe ser el mismo?
Si dos objetos son iguales según el método equals(), entonces llamar al método hashCode de cualquiera de los objetos debe producir el mismo resultado entero.
Si dos objetos no son iguales según el método igual (), llamar a Huoying Computer Training para encontrar el método hashCode de cualquiera de los dos objetos no necesariamente produce el mismo resultado entero.