Red de conocimiento informático - Aprendizaje de programación - ¿Cuántos capítulos tiene Pensamientos de programación JAVA?

¿Cuántos capítulos tiene Pensamientos de programación JAVA?

1*** Capítulo 17

¡Te recomiendo encarecidamente que compres este libro! Aunque hay muchos documentos electrónicos, se pueden encontrar en todas partes en Baidu, ¡pero no son muy convenientes! ¡Leer este libro realmente me hizo cambiar de opinión! !

Capítulo 1 Introducción a los objetos

1.1 Progreso de la abstracción

1.2 Interfaz de objetos

1.3 Plan de implementación oculto

1.4 Reutilización de soluciones

1.5 Herencia: Reutilización de interfaces

1.5.1 Mejora de clases básicas

1.5.2 Equivalencia y similitud

1.6 Uso intercambiable de objetos polimórficos

1.6.1 Vinculación dinámica

1.6.2 Clases base abstractas e interfaces

1.7 Tiempo de creación y existencia de objetos

1.7.1 Colecciones y herederos

1.7.2 Estructura de raíz única

1.7.3 Bibliotecas de colecciones y colecciones fáciles de usar

1.7 .4 Dilema durante la limpieza: ¿Quién es responsable de la limpieza?

1.8 Control de errores: resolución de errores

1.9 Multihilo

1.10 Persistencia

1.11 Java e Internet

1.11.1 ¿Qué es la Web?

1.11.2 Programación del lado del cliente

1.11.3 Programación del lado del servidor

1.11.4 Un dominio independiente: las aplicaciones

1.12 Análisis y Diseño

1.12.1 No te pierdas

1.12.2 Fase 0: Elabora un plan

1.12.3 Fase 1: ¿Qué hacer?

1.12.4 Fase 2: ¿Empezar a construir?

1.12.5 Fase 3: Creación formal

1.12.6 Fase 4: Revisión

1.12.7 Devolución del plan

1.13 ¿Java o C++?

Capítulo 2 Todo es un objeto

2.1 Usar identificadores para manipular objetos

2.2 Todos los objetos deben ser creados

2.2.1 Guardar en Donde

2.2.2 Caso especial: tipo principal

2.2.3 Matrices en Java

2.3 Nunca borrar objetos

2.3. 1 Alcance

2.3.2 Alcance del objeto

2.4 Nuevo tipo de datos: clase

2.4.1 Campos y métodos

2.5 Métodos , argumentos y valores de retorno

2.5.1 Lista de argumentos

2.6 Creación de programas Java

2.6.1 Visibilidad de nombres

p>

2.6.2 Uso de otros componentes

2.6.3 Palabra clave estática

2.7 Nuestro primer programa Java

2.8 Comentarios e incorporación de documentación

2.8.1 Documento de comentarios

2.8.2 Sintaxis específica

2.8.3 Incrustar HTML

2.8.4 @see: Referencia a otras clases

2.8.5 Marca de documento de clase

2.8.6 Marca de documento variable

2.8.7 Marca de documento de método

2.8 .8 Ejemplo de documento

2.9 Estilo de codificación

2.10 Resumen

2.11 Ejercicio

Capítulo 3 Control del flujo del programa

3.1 Uso de operadores Java

3.1.1 Prioridad

3.1.2 Asignación

3.1.3 Operadores aritméticos

3.1.4 Incremento y decremento automático

3.1.5 Operadores relacionales

3.1.6 Operadores lógicos

3.1.7 Operadores bit a bit

3.1.8 Operador de desplazamiento

3.1.9 If-el ternario

operador se

3.1.10 Operador coma

3.1.11 Operador cadena +

3.1.12 Reglas generales de funcionamiento de los operadores

3.1 .13 Operadores de forma

3.1.14 Java no tiene "sizeof"

3.1.15 Revisar orden de cálculo

3.1.16 Resumen de operadores

3.2 Control de ejecución

3.2.1 Verdadero y falso

3.2.2 if-else

3.2.3 Repetir

3.2.4 hacer mientras

3.2.5 para

3.2.6 Interrumpir y continuar

3.2.7 Cambiar

3.3 Resumen

3.4 Ejercicios

Capítulo 4 Inicialización y limpieza

4.1 Inicialización garantizada por parte del constructor

4.2 Sobrecarga de métodos

4.2.1 Diferenciar métodos sobrecargados

4.2.2 Sobrecarga de tipos principales

4.2.3 Sobrecarga de valor de retorno

4.2.4 Generador predeterminado

4.2.5 esta palabra clave

4.3 Limpieza: acabado y recolección de basura

4.3.1 ¿Cuál es el propósito de finalize()?

4.3.2 Se debe realizar una limpieza

4.4 Inicialización de miembros

4.4.1 Inicialización especificada

4.4.2 Inicialización del constructor

4.5 Inicialización de matriz

4.5.1 Matriz multidimensional

4.6 Resumen

4.7 Ejercicios

Capítulo 5 Proceso de implementación oculto

5.1 Paquete: Unidad de biblioteca

5.1.1 Crear un nombre de paquete único

5.1.2 Personalizar la biblioteca de herramientas

5.1.3 Usar importaciones para cambiar el comportamiento

5.1.4 Desactivación de paquetes

5.2 Indicadores de acceso a Java

5.2.1 "Friendly"

5.2.2 público: acceso a interfaz

5.2.3 privado: sin contacto

5.2.4 protegido: "un tipo amigable"

5.3 Interfaz e implementación

5.4 Acceso a clases

5.5 Resumen

5.6 Ejercicios

Capítulo 6 Regeneración de Clases

6.1 Sintaxis de Síntesis

p>

6.2 Sintaxis de herencia

6.2.1 Inicializando clases base

6.3 Combinación de composición y herencia

6.3.1 Garantizando una correcta limpieza

6.3. 2 Ocultación de nombres

6.4 Elegir síntesis o herencia

6.5 protegido

6.6 Desarrollo incremental

6.7 Modelado ascendente

6.7.1 ¿Qué es el "modelado ascendente"?

6.8 palabra clave final

6.8.1 datos finales

6.8.2 método final

6.8.3 clase final

6.8.4 Notas finales

6.9 Inicialización y carga de clases

6.9.1 Inicialización de herencia

6.10 Resumen

6.11 Ejercicios

Capítulo 7 Polimorfismo

7.1 Backcasting

7.1.1 Por qué Backcasting

7.2 Comprensión profunda

7.2.1 Vinculación de llamadas a métodos

7.2.2 Producir un comportamiento correcto

7.2.3 Extensibilidad

7.3 Cobertura y sobrecarga

7.4 Clases y métodos abstractos

7.5 Interfaces

7.5.1 La "herencia múltiple" de Java

7.5.2 Ampliando la interfaz mediante herencia

7.5.3 Agrupación constante

7.5.4 Inicializando campos en la interfaz

7.6 Clases internas

7.6.1 Clases internas y upcasting

7.6.2 Métodos y clases internas en el alcance

7.6.3 Vinculación a clases externas

7.6 .4 clases internas estáticas

7.6.5 Referencia a objetos de clases externas

7.6.6 Heredar de clases internas

7.6.7 ¿Se pueden anular las clases internas? ?

7.6.8 Identificador de clase interna

7.6.9 Por qué usar clases internas: marco de control

7.7 Constructores y polimorfismo

7.7. 1 La secuencia de llamada de los constructores

7.7.2 Herencia y finalize()

7.7.3 Comportamiento de los métodos polimórficos dentro de los constructores

7.8 Diseño mediante herencia

p>

7.8.1 Herencia pura y extensión

7.8.2 Downcasting e identificación del tipo de tiempo de ejecución

7.9 Resumen

7.10 Ejercicios

Capítulo 8 Acomodación de objetos

8.1 Matrices

8.1.1 Matrices y objetos de primera clase

8.1.2 Devolución de matriz

8.2 Colección

8.2.1 Desventaja: tipo desconocido

8.3 Enumerador (iterador)

8.4 Tipos de conjuntos

8.4. 1 Vector

8.4.2 BitSet

8.4.3 Pila

8.4.4 Hashtable

8.4.5 Otra discusión sobre enumeradores

8.5 Ordenar

8.6 Biblioteca de colecciones generales

8.7 Nueva colección

8.7.1 Usar colecciones

8.7. 2 Usar listas

8.7.3 Usar conjuntos

8.7.4 Usar mapas

8.7.5 Decidir la implementación

8.7.6 Operaciones no admitidas

8.7.7 Ordenar y buscar

8.7.8 Utilidades

8.8 Resumen

8.9 Ejercicios

Capítulo 9 Control de errores e infracciones

9.1 Infracciones básicas

9.1.1 Variables propias de la infracción

9.2 Captura de errores

9.2.1 try block

9.2.2 Controlador de errores

9.2.3 Especificación de errores

9.2.4 Detectar todas las excepciones

9.2.5 Re -lanzamiento de excepciones

9.3 Excepciones estándar de Java

9.3.1 RuntimeException Casos especiales

9.4 Crea tus propias excepciones

9.5 Limitaciones de las infracciones

9.6 Limpiar con finalmente

9.6.1 Usar finalmente Qué

9.6.2 Desventaja: faltan infracciones

9.7 Constructores

9.8 Coincidencia de infracciones

9.8.1 Criterios de infracción

p>

9.9 Resumen

9.10 Ejercicios

Capítulo 10 Java IO System

10.1 Entrada y salida

10.1.1 Tipo de flujo de entrada

10.1.2 Tipo de flujo de salida

10.2 Adición propiedades e interfaces útiles

10.2.1 Lectura de datos de InputStream a través de FilterInputStream

p>

10.2.2 Pasar FilterOutputStream a OutputStream

Escribir datos en

10.3 Sus propios defectos: RandomAccessFile

10.4 Clase de archivo

10.4.1 Listado de directorios

10.4.2 Verificar y crear directorios

10.5 Aplicaciones típicas de flujos IO

10.5.1 Flujos de entrada

10.5.2 Flujos de salida

10.5. procesamiento de archivos

10.5.4 Lectura de datos de entrada estándar

10.5.5 Flujo de datos de canalización

10.6 StreamTokenizer

10.6.1 StringTokenizer

10.7 Java 1.1 IO stream

10.7.1 Iniciación y recepción de datos

10.7.2 Modificación del comportamiento del flujo de datos

10.7.3 Clases sin cambios

10.7.4 Un ejemplo

10.7.5 Redirección de IO estándar

10.8 Compresión

10.8.1 Compresión simple usando GZIP

10.8.2 Guardado de múltiples archivos usando Zip

10.8.3 Utilidad de archivo Java (jar)

10.9 Concatenación de objetos

10.9.1 Búsqueda de clases

10.9.2 Control de serialización

10.9.3 Uso de "persistencia"

10.10 Resumen

10.11 Ejercicios

Capítulo 11 Identificación del tipo de tiempo de ejecución

11.1 La necesidad de RTTI

11.1.1 Objeto de clase

11.1.2 Verificación antes del casting

11.2 Sintaxis RTTI

11.3 Reflexión: información de clase en tiempo de ejecución

11.3.1 un extractor de métodos de clase

11.4 Resumen

11.5 Ejercicios

Capítulo 12 Pasar y devolver objetos

12.1 Pasar identificadores

12.1.1 Problema de alias

12.2 Hacer una copia local

12.2.1 Pasar por valor

12.2.2 Clonar objetos

12.2.3 Hacer una clase capaz de clonar

12.2.4 Clonación exitosa

12.2.5 Efecto de Object.clone()

12.2.6 Clonación de objetos sintéticos

12.2.7 Profunda copiando con Vector

12.2.8 Copia profunda mediante serialización

12.2.9 Hacer que los clones tengan mayor profundidad

12.2.10 ¿Por qué existe este diseño extraño?

12.3 Control de clones

12.3.1 Generador de copias

12.4 Clase de solo lectura

12.4.1 Creación de clases de solo lectura

12.4.2 Las desventajas de "inmutable"

12.4.3 Cadenas inmutables

12.4.4 Clases String y StringBuffer

12.4.5 Características de las cadenas

12.5 Resumen

12.6 Ejercicios

Capítulo 13 Capítulo Creación de Windows y Programas

13.1 ¿Por qué usar AWT?

13.2 Porciones de programa básicas

13.2.1 Pruebas de porciones de programa

13.2.2 Un ejemplo más gráfico

13.2. del método framework

13.3 Crear botones

13.4 Capturar eventos

13.5 Campo de texto

13.6 Área de texto

13.7 Etiqueta

13.8 Casilla de verificación

13.9 Botón de opción

13.10 Columna desplegable

Tabla

13.11 Cuadro de lista

13.11.1 handleEvent()

13.12 Control de diseño

13.12.1 FlowLayout

13.12.2 BorderLayout

13.12.3 GridLayout

13.12.4 CardLayout

13.12.5 GridBagLayout

13.13 Reemplazos de acciones

13.14 Limitaciones de los chips del programa

13.14.1 Ventajas de los chips del programa

13.15 Aplicaciones en ventana

13.15.1 Menú

13.15.2 Cuadros de diálogo

13.16 Nuevo AWT

13.16.1 Nuevo modelo de evento

13.16.2 Tipos de eventos y receptores

13.16.3 Uso de Java 1.1 AWT para crear ventanas y programas

13.16.4 Revisando ejemplos anteriores

13.16.5 Eventos vinculantes dinámicamente

p>

13.16.6 Separar la lógica empresarial de la lógica de la interfaz de usuario

13.16.7 Métodos de codificación recomendados

13.17 API de interfaz de usuario de Java 1.1

13.17 p>

13.17.2 Impresión

13.17.3 Portapapeles

13.18 Programación visual y Beans

13.18.1 Qué es un Bean

13.18.2 Usar Introspector para extraer BeanInfo

13.18.3 Un Bean más complejo

13.18.4 Encapsulación de Bean

13.18.5 Más complejo Soporte de Bean

13.18.6 Más conocimientos sobre Beans

13.19 Comenzando con Swing

13.19.1 ¿Cuáles son las ventajas de Swing?

p>

13.19.2 Conversión conveniente

13.19.3 Marco de visualización

13.19.4 Información sobre herramientas

13.19.5 Borde

13.19.6 Botones

13.19.7 Grupos de botones

13.19.8 Iconos

13.19.9 Menús

13.19. Menú emergente

13.19.11 Cuadro de lista y cuadro combinado

13.19.12 Barra deslizante y indicador de progreso

13.19.13 Árbol

13.19.14 Mesa

13.19.15 Cuadro de diálogo Tarjeta

13.19.16 Cuadro de mensaje Swing

13.19.17 Más conocimientos sobre Swing

13.20 Resumen

13.21 Ejercicios

Capítulo 14 Subprocesos múltiples

14.1 Interfaz de usuario responsiva

14.1 .1 Heredar de subprocesos

14.1.2 Subprocesos múltiples para interfaz de usuario

14.1.3 Fusionar subprocesos con la clase principal

14.1.4 Crear múltiples subprocesos

14.1 .5 Hilo de demonio

14.2 ***Disfruta de recursos limitados

14.2.1 Método incorrecto de acceso a recursos

14.2 .2 Cómo Java *comparte recursos

14.2.3 Revisión de Java Beans

14.3 Bloqueo

14.3.1 Por qué el bloqueo

14.3.2 Punto muerto

14.4 Prioridad

14.4.1 Grupo de subprocesos

14.5 Revisión de ejecutable

<

p>14.5.1 Demasiados subprocesos

14.6 Resumen

14.7 Ejercicios

Capítulo 15 Programación de redes

15.1 Identificación de máquinas

15.1.1 Servidores y Clientes

15.1.2 Puertos: Un lugar único dentro de una máquina

15.2 Sockets

15.2 .1 Un servidor simple y programa cliente

15.3 Sirviendo a múltiples clientes

15.4 Datagramas

15.5 Una aplicación web

15.5.1 Aplicación de servidor

15.5.2 Pieza del programa NameSender

15.5.3 15.5.3 Cuestiones a las que prestar atención

15.6 Comunicación entre Java y CGI

p>

15.6 .1 Codificación de datos CGI

15.6.2 Porciones de programa

15.6.3 Programas CGI escritos en C++

15.6.4 El concepto de POST

15.7 Conexión a la base de datos usando JDBC

15.7.1 Obtener ejemplos de aprendizaje

15.7.2 Encontrar la versión GUI del programa

15.7. 3 ¿Por qué la API JDBC es compleja?

15.8 Métodos remotos

15.8.1 Concepto de interfaz remota

15.8.2 Implementación de interfaz remota

15.8.3 Crear raíces y tallos

15.8.4 Usar objetos remotos

15.8.5 Alternativas a RMI

15.9 Resumen

15.10 Ejercicio

Capítulo 16 Diseño de paradigma

16.1 Concepto de paradigma

16.1.1 Mónada

16.1.2 Clasificación de paradigma

16.2 Paradigma del observador

16.3 Simulación del contenedor de recolección de basura

16.4 Mejora del diseño

16.4.1 “Creación de más objetos”

16.4.2 Un paradigma para la creación de prototipos

16.5 Aplicación de la abstracción

16.6 Despacho múltiple

16.6.1 Implementación Despacho doble

16.7 Paradigma de acceso

16.8 ¿Es RTTI dañino?

16.9 Resumen

16.10 Ejercicios

Capítulo Capítulo 17 Proyecto

17.1 Procesamiento de textos

17.1.1 Lista de códigos de extracción

17.1.2 Verificar estilo de caso

17.2 Herramientas de búsqueda de métodos

17.3 Teoría de la complejidad

17.4 Resumen

17.5 Ejercicios