La Red de Conocimientos Pedagógicos - Currículum vitae - Preguntas de la entrevista sobre desarrollo de Java

Preguntas de la entrevista sobre desarrollo de Java

1. ¿Cuáles son las características de la orientación a objetos?

Respuesta: Las características orientadas a objetos incluyen principalmente los siguientes aspectos:

-Abstracción: La abstracción es el proceso de construir una clase resumiendo las * * * características de una clase, incluidos los datos. abstracción y abstracción conductual. La abstracción sólo se centra en las propiedades y comportamientos de los objetos, no en los detalles de estos comportamientos.

-Herencia: La herencia es el proceso de obtener información de herencia de una clase existente para crear una nueva clase. La clase que proporciona información de herencia se denomina clase principal (superclase, clase base); la clase que obtiene información de herencia se denomina subclase (clase derivada). La herencia le da al sistema de software cambiante un cierto grado de continuidad y también es un medio importante para encapsular factores variables en el programa (si no puede comprenderlo, lea la parte sobre el patrón puente en "Java and Patterns" del Dr. Hong Yan o " Refinamiento de patrones de diseño" ).

-Encapsulación: en términos generales, la encapsulación es un método para vincular datos y manipular datos. El acceso a los datos solo se puede lograr a través de interfaces definidas. La esencia de la orientación a objetos es describir el mundo real como una serie de objetos cerrados completamente autónomos. Los métodos que escribimos en clases son encapsulaciones de detalles de implementación; escribimos una clase que encapsula datos y operaciones de datos. Se puede decir que el embalaje oculta todo lo que se puede ocultar y sólo proporciona la interfaz de programación más sencilla para el mundo exterior (piense en la diferencia entre las lavadoras normales y las automáticas. Es obvio que las lavadoras automáticas están mejor empaquetadas y, por tanto, más fáciles para operar; los que usamos ahora en el empaquetado de teléfonos inteligentes también son muy buenos, porque todo se hace con unas pocas teclas.

-Polimorfismo: El polimorfismo se refiere a permitir que diferentes subtipos de objetos respondan de manera diferente al mismo mensaje. En pocas palabras, se llama al mismo método con la misma referencia de objeto pero se hacen cosas diferentes. El polimorfismo se divide en polimorfismo en tiempo de compilación y polimorfismo en tiempo de ejecución. Si se considera que los métodos del objeto son proporcionados por el objeto al mundo exterior. entonces el polimorfismo en tiempo de ejecución se puede explicar como: cuando el sistema A accede al servicio proporcionado por el sistema B, el sistema B tiene muchas formas de proporcionar el servicio, pero todo es transparente para el sistema A (al igual que una afeitadora eléctrica es un sistema A, su fuente de alimentación El sistema es el sistema B, y el sistema B puede usar energía de la batería, energía de CA o incluso energía solar. El sistema A solo llama al método de suministro de energía a través de objetos de clase B y no conoce el sistema de suministro de energía (la sobrecarga del método se implementa en el momento de la compilación). Morfismo (también conocido como pre-enlace), mientras que la anulación de métodos implementa el polimorfismo en tiempo de ejecución (también conocido como post-enlace). Para lograr el polimorfismo, se deben hacer dos cosas: 1). Reescritura de métodos (la subclase hereda la clase principal y anula los métodos abstractos o existentes en la clase principal). 2) Modelado de objetos (hacer referencia a un objeto de subtipo al que hace referencia un tipo principal, de modo que la misma referencia que llama al mismo método mostrará diferentes comportamientos según los diferentes objetos de subtipo).

2. ¿Cuál es la diferencia entre los modificadores de acceso público, privado, protegido y sin escritura (predeterminado)?

Respuesta:

Modificador

Categoría actual

Bao Tong

Subclase

Otros paquetes

Público√√√√√√

Protegido√ √ √ ×

Predeterminado√ √ × ×

Privado √ × × ×

Cuando los miembros de una clase no tienen modificadores de acceso escritos, utilizan el valor predeterminado de forma predeterminada. De forma predeterminada, es equivalente a público para otras clases en el mismo paquete y a privado para otras clases que no están en el mismo paquete. Protegido es público para subclases y privado para clases que no están en el mismo paquete y no tienen una relación padre-hijo. En Java, los modificadores de las clases externas solo pueden ser públicos o predeterminados, y los modificadores de los miembros de la clase (incluidas las clases internas) pueden ser los cuatro anteriores.

3. ¿Es la cadena el tipo de datos más básico?

Respuesta: No, Java tiene solo ocho tipos de datos básicos: byte, short, int, long, float, double, char, boolean, excepto los tipos primitivos y los tipos de enumeración, el resto son tipos de referencia.

4. ¿Es correcto flotar f = 3.4?

Respuesta: Incorrecta. 3,4 es un número de doble precisión.

Asignar double a float es una conversión descendente, lo que provocará una pérdida de precisión, por lo que es necesario forzar la conversión de tipo a float f = (float)3.4. O escriba float f = 3.4F.

5. Corto s 1 = 1; s 1 = s 1+1; Corto s 1 = 1; s 1+= 1;

Respuesta: La abreviatura es s 1 = 1; s 1 = s 1+1; dado que 1 es de tipo int, el resultado de la operación de s1+1 también es de tipo int y debe convertirse a tarea de tipo corto. El short s 1 = 1; s 1+= 1; se puede compilar correctamente porque s 1+= 1; que es equivalente a s 1 =(short)(s 1+1);

6. ¿Existe goto en Java?

Respuesta: goto es una palabra reservada en Java y no se utiliza en la versión actual de Java. (Según el apéndice del "Lenguaje de programación Java" escrito por James Gosling (el padre de Java), se proporciona una lista de palabras clave de Java, incluidas goto y const. Sin embargo, estas dos palabras clave no están disponibles actualmente, por lo que algunos lugares se llaman Palabras reservadas De hecho, la palabra palabras reservadas debería tener un significado más amplio, porque los programadores que están familiarizados con el lenguaje C saben que las palabras o combinaciones de palabras que se han utilizado en la biblioteca de clases del sistema se consideran palabras reservadas. >

7.¿Cuál es la diferencia entre int y Integer?

Respuesta: Java es un lenguaje de programación casi puramente orientado a objetos, pero para facilitar la programación, se introducen tipos de datos básicos. Para tratar estos tipos de datos básicos como Para tratar objetos, Java introduce las clases contenedoras correspondientes para cada tipo de datos básicos. La clase contenedora para int es Integer. A partir de Java 5, se introduce un mecanismo automático de empaquetado/desempaquetado para que los dos puedan ser. convertidos entre sí