javaSE (resumen)

Revisión de JavaSE

Gramática básica

Comentario

  • Comentarios en línea //
  • Comentario de varias líneas / ** /
  • Comentarios de documentación / ** * / javadoc genera documentación de ayuda

Identificador

palabras clave de Java (revisión de Baidu)

tipo de datos

  • Tipos de datos básicos (cuatro tipos y 8 tipos)

    • tipo de datos Tipos de byte
      Entero byte 1
      Entero corto 2
      Entero En t 4
      Entero largo 8
      Punto flotante flotador 4
      Punto flotante doble (predeterminado) 8
      personaje carbonizarse 2
      Booleano booleano Primer lugar)

      Punto flotante BigDecimal

    Tipo de datos de referencia

    • clase
    • interfaz
    • Formación

    Conversión de tipo

    • Conversión automática de tipo de menor a mayor
    • Conversión de tipo de fuerza de alta a baja (baja) alta

    Variables y constantes

    escriba varName [= valor];

    Alcance

    • Variable de clase
    • Instancia variable
    • Variable local

    MAX_A final constante = 10;

    Convenciones de nombres

    • Ver el nombre
    • Denominación de casos de camello (variables, métodos)
    • Clase, inicial en mayúscula, nombre del caso camel
    • Constante: mayúsculas + subrayado
    • No uses pinyin

Operador

  • Operador aritmético + - * /% ++ -
  • Operador de asignación =
  • Operador relacional> <> = <= ==! = Instancia de
  • Operador lógico && ||!
  • Operador de bit & | ^ ~ >> << >>>
  • Operador condicional ?: (Operador ternario) x? Y: z
  • Operador de expansión + = - = * = / =

Mecanismo de paquetes

  • Nombre de dominio inverso
  • Evitar conflictos de nombres
  • paquete
  • importar

JavaDoc

  • Documentación de ayuda de JDK
  • 1.javadoc
    • @auther nombre del autor
    • @Version versión
    • @Desde la primera versión compatible de JDK
    • Parámetro @Param
    • @return valor de retorno
    • excepción @throws

Control de procesos

  • Interacción del usuario del escáner System.in

  • Estructura de la secuencia La estructura predeterminada del programa, ejecución de arriba hacia abajo

  • Seleccionar estructura

    • si estructura de opción única
    • estructura de doble selección if-else
    • estructura de opción múltiple if-else if-else
    • cambiar
      • jdk admite el tipo de cadena
      • penetración de caso
      • rotura
      • defecto

    Estructura de bucle

    • intenta evitar bucles interminables
    • hacer ... mientras
    • para para (int i = 0; i <100; i ++)
    • Tabla de multiplicar de nueve y nueve
    • Agregar para bucle

    romper y continuar

    • romper: salir del bucle
    • continuar: Termina el bucle actual
    • Etiquetado continuar
    • return: Finaliza la ejecución del método

método

  • ¿Cuál es el método?
  • Modificador de definición de método valor de retorno nombre del método (nombre del parámetro) {valor de retorno de retorno;}
  • Llamada de método
    • Método de nombre de clase
    • Objeto. Método
  • Las sobrecargas de métodos tienen el mismo nombre pero diferentes listas de parámetros
  • La línea de comando pasa parámetros al método principal pasa parámetros cmd salida java.class file run
  • Parámetro de longitud variable
    • ...
    • Debe colocarse en el último parámetro

Recursividad

  • Ajústate, date una salida
  • Preguntas frecuentes sobre LeetCode

Formación

  • Definición de matriz

    • nuevo int [5]
    • {1,2,3,4,5}
    • Debe ser del mismo tipo
  • Uso de matrices

    • Obtenga el valor por subíndice
    • ArrayIndexoutofBounds
    • Aumento del recorrido del bucle
  • Matriz bidimensional int [] []

  • Herramientas de matrices

  • Algoritmo de clasificación

    • Ordenamiento de burbuja
    • Seleccionar ordenar
    • Tipo de inserción
    • Ordenación rápida
    • Combinar ordenación
    • Tipo de colina
    • Tipo de pila
    • Orden base

Orientado a objetos

Que es orientado a objetos

Clase y objeto

  • La clase es una abstracción de objetos: plantilla Clase
  • El objeto es específico de la clase

Método de construcción

  • Sobrecarga construida
    • Construcción sin parámetros por defecto
    • Si define manualmente una estructura parametrizada, debe agregar manualmente otra estructura sin parámetros
    • ¡El modo singleton requiere un constructor privado!

nuevo objeto

  • Referencia de almacenamiento de pila
  • El montón almacena objetos específicos.

Paquete

  • Propiedad privada, obtener, configurar
  • heredar
    • extiende
    • Objeto
    • La clase secundaria tiene todas las características de la clase principal.
    • Reescritura de métodos
    • esta
    • súper
    • Java es herencia única, solo se puede heredar una clase principal

Polimorfismo

  • La referencia de la clase principal apunta al objeto de la clase secundaria Person person = new Student ();
  • Instancia de clave, si coincide, puede convertir entre tipos

Modificador

  • público
  • protegido
  • privado
  • estático
  • final
  • abstracto

interfaz

  • interfaz
  • Restricción, solo se puede definir el nombre del método
  • La subclase implementa la interfaz y debe reescribir sus métodos.
  • Una interfaz con un solo método se denomina interfaz funcional, que se puede simplificar mediante expresiones lambda.
  • La interfaz es más abstracta que abstracta
  • Una clase puede implementar múltiples interfaces

Clase interior

  • Clase interna local
  • Clase interna estática
  • Clase interna anónima (énfasis)

anormal

Desechable
  • Excepción
    • Excepción en tiempo de ejecución
      • 1/0
      • ClassNotFound
      • NullPoint
      • UnKownType
      • Excepción de subíndice fuera de límites
      • 。。。
    • Comprobar excepción
  • Error
    • Error AWT
    • Error de JVM
      • Desbordamiento de pila
      • Sin memoria
Cinco palabras clave
  • tratar{}
  • captura(){}
  • finalmente{}
  • lanzar manualmente lanzar una excepción
  • arroja el método lanza una excepción
Excepción personalizada
  • Solo hereda la clase Exception

Comúnmente utilizado

  • Clase de objeto
    • código hash()
    • Encadenar()
    • clon()
    • getClass ()
    • notificar()
    • Espere()
    • es igual a ()
  • Clase de matemáticas // Operaciones matemáticas comunes
  • Clase aleatoria // Genera UUID de número aleatorio
  • Clase de archivo
    • Crea un archivo
    • Archivos de vista
    • Modificar archivo
    • Borrar archivos
  • Embalaje // Autoembalaje y desembalaje (Baidu entiende) entrevistará y preguntará
  • Clase de fecha
    • Fecha
    • SimpleDateFormat aaaa-MM-dd HH: mm: ss
    • Calendario (recomendado)
  • Inmutabilidad final de la clase de cadena
  • StringBuffer adjunto de longitud variable () Gran cantidad de datos multiproceso, baja eficiencia y seguridad
  • El volumen de datos de un solo subproceso de longitud variable de StringBuilder es grande, el efecto es alto, inseguro

Marco de colección

  • Colección
    • Lista (ordenada y repetible)
      • ArrayList (de uso común)
        • añadir
        • eliminar
        • contiene
        • Talla
      • LinkedList (de uso común)
        • getFirst ()
        • obtener ultimo()
        • removeFirst ()
        • addFirst ()
        • ...
      • Vector
      • Apilar
    • Establecer (desordenado y no repetible)
      • HashSet (de uso común)
      • TreeSet
    • Iterador: Iterador
  • Mapa
    • HashMap (centrarse en preguntas frecuentes para entrevistas)
      • JDK1.7: matriz + lista vinculada
      • JDK1.8: tabla hash = matriz + lista vinculada + árbol rojo-negro
    • TreeMap
  • Herramientas de colecciones
  • Herramientas Hutool (la mayoría tienen)
  • Restricciones <> genéricas para evitar problemas entre conversiones de tipos

Estilo IO

  • Flujo de bytes
    • Salida: OutputStream
    • Entrada: InputStream
  • Flujo de caracteres
    • Escribir: lector
    • Escriba: Wirter
  • Flujo de nodo
    • CharArrayReader, Writer, InputStream, OutputStream
    • StringReader, Writer
    • pipe (flujo de canalización) PipedOutputStream
  • Flujo de procesamiento
    • buffer
      • bufferInputStream
      • bufferOutputStream
      • bufferReader
      • bufferWriter
    • Publicación por entregas
      • Deserializar transitorio serializable (transparente)
    • datos
      • DataInputStream
      • DataOutputStream
    • Flujo de conversión
      • InputstreamReader
      • OutputStreamWriter
    • Filtro cuatro
    • impresión
      • PrintWriter
      • PrintStream

Multihilo

  • Procesos e hilos
  • ejecutar () , Start ()
  • La forma en que se crea el hilo
    • Thread start0, método local: java no tiene el derecho de llamar, entregado al C subyacente para manejar privado
    • Lambda de interfaz funcional ejecutable
    • Invocable puede tener un valor de retorno
  • Proxy estático
    • nuevo Tread (Runnable) .start ();
  • Expresión lambda
    • Programación funcional
    • Evite demasiadas definiciones de clases internas,
    • nuevo hilo (() -> {
    • Sal();
    • }).comienzo();
    • Derivar manualmente la expresión lambda nuevamente
  • Estado del hilo
    • Nuevo estado
    • Listo
    • correr
    • bloquear
    • muerte
  • formas de uso común
    • dormir
    • unirse
    • rendimiento
    • es en vivo
    • comienzo
    • fijar prioridad
    • interrumpir

Sincronización de subprocesos

  • Varios objetos operan en el mismo recurso
  • Cola + bloqueo
  • Sincronizado
    • Desventajas del método de sincronización: demasiados bloqueos y el tercero
    • Bloque de código de sincronización (¡de uso común!) El segundo
    • El primer hilo entra para obtener el bloqueo, y se pondrá en cola más tarde, hasta que esta persona libere el bloqueo y luego lo obtenga más tarde.
    • Punto muerto: dos personas se sujetan mutuamente
      • Mutuamente excluyentes
      • Solicitar y retener
      • Sin privación
      • Condición de espera de bucle
  • Bloquear (prioridad alta) más alta
    • ReentrantLock
      • bloquear
      • trylock
      • desbloquear
  • Hilo de comunicación
    • Búfer: cola de mensajes
    • Posición de la señal: semáforo
    • Espere();
    • notificar a todos ();
  • Grupo de subprocesos (grupo)
    • Tecnología de pooling
    • Tamaño de la piscina
    • Número máximo de conexiones
    • Hora de espera
    • 。。。。

programación de la red

  • IP
  • Puerto
  • Programación de socket
  • TCP
    • Tres apretón de manos
    • Saludar cuatro veces
    • Orientado a la conexión
  • UDP
    • sin conexión
    • Paquete
  • URL
  • Conociendo Tomcat
  • Comunicación por chat
  • Subir archivo

GUI

  • AWT
    • Cuadro
    • Escuche los eventos
      • ratón
      • teclado
      • ventana
      • Evento de acción
  • Columpio
    • Caja de texto
    • etiqueta
    • Botón
    • Campo de texto
    • panel
    • Diseño
    • cerrar la ventana
    • Lista
  • Serpiente codiciosa
    • Temporizador
    • Monitor de teclado
    • El concepto de marcos de juego

Anotación y reflexión

  • anotación
    • Meta anotación
    • Anotaciones integradas
    • Anotación personalizada
    • Anotación de lectura de reflexión
  • reflexión
    • Clase newlnstance ();
    • Mecanismo de carga de clases
    • Método
      • invocar (usuario3, "Guangzhou");
      • Hay sobrecargas, pero también es necesario escribir el tipo de parámetros
    • Conjunto de campos (usuario4, "Guangzhou");
    • Construir
      • newlnstance ();
      • Requerido al obtener, pase el tipo de clase del parámetro
    • Destruye las palabras clave privadas
      • setAcce'sible (true) ;
      • El análisis de rendimiento es normal> Detectar reflexión cerrada> Reflexión predeterminada
  • Explorando el patrón singleton
  • Corriente
  • ForkUnirse
    • Comparación de efectos

Supongo que te gusta

Origin blog.csdn.net/HolleDream/article/details/107936128
Recomendado
Clasificación