Diez preguntas de entrevista por día (día 1)

1. ¿Cuáles son los aspectos de las características orientadas a objetos?

1) Encapsulación: la encapsulación es para envolver los datos y el proceso, el usuario solo puede conocer y usar las propiedades y métodos del objeto, y no conoce la implementación específica del objeto. No se puede acceder a los datos fuera del objeto a voluntad. Puede cambiar su estructura o implementación dentro del objeto encapsulado. Mientras la interfaz del objeto no haya cambiado, el resto del código no necesita ser procesado. Esto localiza los errores, mejora en gran medida la capacidad de mantenimiento del programa y reduce la dificultad de verificar y corregir errores.

2) Herencia: La herencia es un modelo jerárquico compuesto de clases relacionadas. Puede reutilizar clases, y proporciona una forma de expresar lo común, es decir, la clase derivada (clase secundaria) de la clase original puede heredar métodos y variables de instancia de la clase base (clase primaria), y la clase puede modificar o agregar nuevos métodos para hacerlo Más adecuado para necesidades especiales. Esto simplifica enormemente el proceso de diseño de nuevas clases.

3) Polimorfismo: el polimorfismo es que los atributos y métodos definidos en la clase padre son heredados por la subclase y pueden tener diferentes tipos de datos o exhibir diferentes comportamientos. El polimorfismo incluye polimorfismo paramétrico y polimorfismo de inclusión. El editor de Java juzgará automáticamente según los parámetros pasados ​​y realizará diferentes operaciones según el tipo de objeto de tiempo de ejecución, lo que resuelve el problema de la función de la aplicación con el mismo nombre. El polimorfismo enriquece el contenido de los objetos, expande la adaptabilidad de los objetos y cambia la relación de herencia única de los objetos.

2. ¿El alcance de los modificadores públicos, privados y protegidos, y la diferencia cuando no se escriben modificadores?

1) Se puede acceder a las variables y métodos que utilizan el modificador público después de crear un objeto en cualquier clase, incluida la clase actual, la misma clase de paquete, clases descendientes y clases subcontratadas.

2) Las variables y los métodos que usan modificadores protegidos no pueden acceder a objetos creados por clases subcontratadas.

3) Las variables y métodos que no escriben modificadores son la clase predeterminada y solo pueden acceder a objetos creados por clases en el mismo paquete.

4) Las variables y los métodos que usan el modificador privado solo se pueden usar en la clase actual.

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

No

Los tipos de datos en el lenguaje Java se dividen en dos categorías, a saber, tipos de datos básicos y tipos de datos de referencia.

Los tipos de datos básicos se dividen en:

Tipo de entero: tipo de byte (byte), entero corto (corto), entero (int), entero largo (largo)

Tipo de punto flotante: precisión simple (flotante), precisión doble (doble)

Personaje (char)

Lógico (booleano)

Los tipos de datos de referencia se dividen en:

Interfaces, objetos, clases, matrices, cadenas, colecciones, etc.

4. ¿Es correcto el tipo flotante float f = 3.4?

Incorrecto

Conversión implícita, es decir, conversión automática, es la conversión de pequeña a grande:

byte ——》 corto ——》 int ——》 largo ——》 flotante ——》 doble

char ——》 int ——》 long ——》 float ——》 double

No requiere una declaración y es el valor predeterminado del sistema.

Conversión explícita, es decir, conversión forzada, es de conversión grande a pequeña, su formato es:

Tipo variable = (tipo) variable 2;

En Java, el valor predeterminado sin un punto decimal es int, y el valor predeterminado con un punto decimal es doble, que debe escribirse como:

flotador f = (flotador) 3.4 或 flotador f = 3.4 f

5. La declaración float f = 1.3, ¿puede pasar la compilación?

No puedo

La razón es la misma que la anterior. Debe ser coercitivo y escrito como float f = (float) 1.3 o float f = 1.3 f

6. Lo que está mal con s1 corto = 1; s1 = s1 + 1; s1 corto = 1; lo que está mal con s1 + = 1;

corto s1 = 1; s1 = s1 + 1; incorrecto

La especificación Java tiene tales reglas: 1. El bit alto al bit bajo requiere conversión forzada 2. La transferencia automática de bit bajo a bit alto.

i es int type, s1 es short type, s1 se convierte automáticamente en int type después de agregar 1 operación, por lo que la conversión forzada

corto s1 = 1; s1 + = 1; correcto

Este tipo de actualización no sucederá, la especificación JAVA dice:

e1 + = e2 es en realidad e1 = (T1) (e1 + e2), donde T1 es el tipo de datos de e1.

s1 + = 1 es equivalente a s1 = (corto) (s1 + 1), por lo que es correcto.

7. ¿Java tiene goto?

No

goto y const son palabras reservadas en Java y ahora no se usan en Java

8. ¿Cuál es la diferencia entre int e Integer?

1) El entero puede ser nulo, pero int no puede;

2) Integer puede usarse para genéricos, pero int no puede;

3) int es más eficiente que Integer, porque int es un valor específico almacenado directamente en la pila, e Integer es una referencia para almacenar el valor en el montón;

4) Los valores de dos enteros pueden ser iguales, pero no son iguales;

5) Boxeo automático (el tipo de datos original se convierte al tipo de datos de referencia) y unboxing automático (el tipo de datos de referencia se convierte al tipo de datos original)

9. ¿Cuál es la diferencia entre & y &&?

El operador "&&" es conciso y operador, y el operador "&" es no conciso y operador, y sus diferencias son las siguientes:

1) El operador "&&" solo calcula la expresión lógica en el lado derecho cuando su lado izquierdo es verdadero; de lo contrario, devuelve directamente el resultado de la operación falso;

2) Si el operador "&" es verdadero o falso a la izquierda, debe calcular la expresión lógica a la derecha y finalmente devolver el resultado de la operación.

10. Describa brevemente la diferencia entre las operaciones lógicas (&, |, ^) y las operaciones condicionales (&&, ||)?

1) Las operaciones condicionales solo pueden operar en tipos booleanos, y las operaciones lógicas no solo pueden operar en tipos booleanos, sino también en tipos numéricos

2) La operación lógica no provocará un cortocircuito.

Publicado 23 artículos originales · elogiado 39 · visitas 2704

Supongo que te gusta

Origin blog.csdn.net/abc701110/article/details/105500452
Recomendado
Clasificación