• CAPITULO 1. SISTEMAS NUMERICOS Y ALGORITMOS
    • 1.1 Conversiones de decimal a binario, hexa u octal
    • 1.2 Conversiones de binario, hexa u octal a decimal
    • 1.3 Números enteros negativos en 16 bits
    • 1.4 Conversión de punto flotante a binario
    • 1.5 Conversión de punto flotante binario a decimal
    • 1.6 Aritmética binaria
    • 1.6.1 Suma
    • 1.6.2 Resta
    • 1.6.3 Multiplicación
    • 1.6.4 Ejercicios
    • 1.7 Almacenamiento de números enteros en memoria
    • 1.8 Almacenamiento de números de punto flotante en memoria
    • 1.9 Algoritmos
    • 1.10 Lenguaje de programación para escribir el algoritmo
    • 1.11 El Lenguaje Java.
    • 1.12 Compiladores Java.
  • CAPITULO 2. TIPOS DE DATOS Y OPERADORES
    • 2.1 Definición de tipo de dato
    • 2.2 Constantes
    • 2.3 Constantes Hexadecimal y Octal
    • 2.4 Nombres de variables
    • 2.5 Operadores aritméticos
    • 2.6 Moldes
    • 2.7 Operadores Relacionales
    • 2.8 Operadores Lógicos
    • 2.9 Ejercicios
    • 2.10 Forma de evaluar expresiones lógicas
    • 2.11 Ejercicios
    • 2.12 Operadores bitwise
    • 2.13 Ejercicios
  • CAPITULO 3. TIPOS DE PROGRAMAS QUE SE ESCRIBEN EN JAVA
    • 3.1 Applets
    • 3.2 Programas autónomos sin marcos
    • 3.3 Programas autónomos con marcos
    • 3.4 Programas autónomos con marcos sin el método paint()
  • CAPITULO 4. INSTRUCCIONES DE DECISION
    • 4.1 Instruccion if
    • 4.2 Como determinar si un número es par
    • 4.3 Instrucción if-else
    • 4.4 Ejercicios
    • 4.5 La alternativa ? :
    • 4.6 ifs anidados
    • 4.7 Ejercicios
    • 4.8 La instrucción switch
  • CAPITULO 5. CAPTURA DE DATOS DESDE EL TECLADO
    • 5.1 Escritura de un programa en java
    • 5.2 Instrucciones basicas de entrada y salida
    • 5.3 La calculadora para sumar, restar, multiplicar y dividir
    • 5.4 Area del triángulo dados la longitud de sus lados. Uso de la fórmula base*altura/2
    • 5.5 Ejercicios
  • CAPITULO 6. INSTRUCCIONES REPETITIVAS
    • 6.1 Instrucción while
    • 6.2 Multiplicación de dos naturales
    • 6.3 Instrucción do-while
    • 6.4 Instrucción for
    • 6.5 Algoritmo para elevar y a la z
    • 6.6 Estudio de los tipos de ciclos
      • 6.6.1 Ciclo for básico
      • 6.6.2 Ciclo while básico
      • 6.6.3 Ciclo for-if básico
      • 6.6.4 Ciclo while-if básico
      • 6.6.5 Ciclo for anidado
      • 6.6.6 Ciclo while anidado
    • 6.7 Ejercicios
    • 6.8 La instrucción break
    • 6.9 La instrucción continue
    • 6.10 Ejercicios
    • 6.11 Generador de números aleatorios
    • 6.12 Labels
    • 6.13 Ejercicios
  • CAPITULO 7. PROGRAMACION ORIENTADA A OBJETOS
    • 7.1 Objetos
    • 7.2 Construcción de clases
    • 7.3 Atributos
    • 7.4 Métodos
    • 7.5 El objeto this
    • 7.6 Construcción de métodos
    • 7.7 Calculo de la raíz cuadrada de un número
    • 7.8 Construcción de la clase Triángulo
    • 7.9 Constructores y destructores
    • 7.10 Sobrecarga de constructores
    • 7.11 Manejo de una cuenta de ahorros
    • 7.12 Los modificadores public, private y protected
    • 7.13 El triángulo de Pascal
    • 7.14 Clase para calcular la cadena (a + b) ^ n
    • 7.15 Proceso para calcular el valor de la cadena (a + b) ^ n
    • 7.16 Ejercicios
    • 7.17 Recursión
      • 7.17.1 Métodos recursivos
      • 7.17.2 Cálculo del factorial de un número
      • 7.17.3 Ejercicios
      • 7.17.4 Multiplicación de dos naturales
      • 7.17.5 Ejercicios
      • 7.17.6 La secuencia de Fibonacci
      • 7.17.7 Ejercicios
  • CAPITULO 8. LAS CLASES GRAPHICS Y COLOR
    • 8.1 Métodos de la clase Graphics
    • 8.2 Dibujo de una línea recta
    • 8.3 Como dibujar un pentágono
    • 8.4 Dibujo de un triángulo dada la longitud de sus catetos.
    • 8.5 Dibujo de un círculo en colores.
    • 8.6 La clase Color
    • 8.7 Dibujo de una gráfica usando el método void paint()
    • 8.8 Ejercicios.
  • CAPITULO 9. BOTONES Y OYENTES
    • 9.1 Definición de un oyente para el botón
    • 9.2 Dibujo de una gráfica dentro de un oyente
    • 9.3 Ejercicios
  • CAPITULO 10. CAPTURA DE DATOS DESDE UN CAMPO DE TEXTO
    • 10.1 La clase JTextField
    • 10.2 La balanza
    • 10.3 Intersección entre dos rectas
    • 10.4 Algoritmo para hallar el punto y el angulo de intersección entre dos rectas
    • 10.5 Botones de chequeo. Ley de los cosenos
    • 10.6 Ejercicios
    • 10.7 Paneles alternados mediante un JCheckBox
    • 10.8 Ejercicios
  • CAPITULO 11. ARREGLOS Y MATRICES
    • 11.1 Arreglos
    • 11.2 Paso de arreglos a métodos
    • 11.3 Ejercicios
    • 11.4 Rotación de un pentágono.
    • 11.5 Definició de Matrices
      • 11.5.1 Paso de matrices a los métodos
      • 11.5.2 Suma de matrices
      • 11.5.3 Lectura de números para almacenarlos en una matriz
      • 11.5.4 Matrices de componentes JTextField
      • 11.5.5 Multiplicación de matrices
      • 11.5.6 Algoritmo para rellenar un poligono trazando líneas horizontales
      • 11.5.7 Rotación de un cubo al rededor del eje y
      • 11.5.8 Resolución de ecuaciones por Gauss-Jordan
      • 11.5.9 Determinante de una matriz
      • 11.5.10 Ejercicios
    • 11.6 Matrices creadas dinámicamente
    • 11.7 Dibujo de una figura usando una componente JList
    • 11.8 Ejercicios
    • 11.9 Rotación de un triángulo en la coordenada del circuncentro(cx,cy)
    • 11.10 El triángulo de Napoleón
  • CAPITULO 12. MANEJO DE ARCHIVOS
    • 12.1 Creación de un archivo de texto
    • 12.2 Lectura de un archivo de texto
    • 12.3 Creación de un archivo usando FileInputStream y DataInputStream
    • 12.4 Lectura de un archivo de tipo FileInputStream
    • 12.5 Actualización y retiro de registros al pulsar un botón
      • 12.5.1 Grabación de un registro usando la componente grabar
      • 12.5.2 Listado del archivo usando la componente leer
      • 12.5.3 Actualización de un registro usando la componente actualizar
      • 12.5.4 Eliminación de un registro usando la componente retirar
    • 12.6 Archivos de acceso directo
      • 12.6.1 Grabación de un registro
      • 12.6.2 Lectura de un archivo directo
      • 12.6.3 Retiro de un registro de un archivo directo
      • 12.6.4 Modificación de de los datos de un registro de un archivo directo
      • 12.6.4 Ejercicios
  • CAPITULO 13. HERENCIA, CLASES ABSTRACTAS, POLIMORFISMO E INTERFACES
    • 13.1 La instrucción extends
    • 13.2 Clases abstractas
    • 13.3 Polimorfismo
    • 13.4 Calculo del número PI usando polimorfismo
    • 13.5 Arreglos de objetos que incluyen funciones polimorficas
    • 13.6 Interfases
    • 13.7 Area de un triángulo, usando dos interfaces.
    • 13.8 Ejercicios
    • 13.9 Clases anidadas
    • 3.10 Marcos emergentes
    • 3.11 Marcos emergentes usando una lista
  • CAPITULO 14. PROCESAMIENTO DE SONIDOS E IMAGENES
    • 14.1 Constructores y métodos de la clase URL
    • 14.2 Métodos de la clase abstract Image
    • 14.3 Constructores y métodos de la clase Applet
    • 14.4 Métodos de la interface AudioClip
    • 14.5 Lectura de un archivo de sonido.
    • 14.6 Lectura de una imagen para dibujarla en un applet.
    • 14.7 Lectura de una imagen para dibujarla en un programa autónomo.
    • 14.8 La clase MediaTracker
    • 14.9 Forma de pintar una imagen al oprimir un botón
    • 14.10 Creación de imágenes en memoria.
    • 14.11 Lectura de datos desde el documento HTML.
    • 14.12 Grabación de una imagen
    • 14.13 Ejercicios
    • 14.14 Programa para determinar si un rey negro esta en jaque
    • 14.15 Ejercicios
  • CAPITULO 15. ADMINISTRADORES DE DISEÑO
    • 15.1 Administrador libre
    • 15.2 Administrador FlowLayout
    • 15.3 Paneles
    • 15.4 Administrador GridLayout(int rows, int cols)
    • 15.5 Otros métodos del administrador GridLayout
    • 15.6 La clase GridBagConstraints
    • 15.7 Administrador GridBagLayout
    • 15.8 Administrador BorderLayout
    • 15.9 Ejercicios
  • CAPITULO 16. LA CLASE CANVAS
    • 16.1 Objetos de tipo Canvas
    • 16.2 Dibujo de imagenes en un Canvas
    • 16.3 Ejercicios
  • CAPITULO 17. VARIABLES Y FUNCIONES ESTATICAS
    • 17.1 Variables estáticas
    • 17.2 Restricciones en el uso de métodos y atributos estáticos
    • 17.3 Métodos estáticos
    • 17.4 El modificador final
    • 17.5 Representación gráfica de las distancias entre el sol y los planetas del sistema solar.
    • 17.6 Fuerzas de atracción de los planetas en el sistema solar.
    • 17.7 Error al invocar métodos no estáticos dentro de métodos estáticos
    • 17.8 Ejercicios
  • CAPITULO 18. PROCESOS CONCURRENTES. HILOS
    • 18.1 Construcción de un hilo
    • 18.2 Activación de los hilos en el programa.
    • 18.3 Ejercicios
    • 18.4 La interface Runnable
    • 18.5 Forma de activar varios hilos usando un solo método run().
    • 18.6 Métodos sincronizados
    • 18.7 Hilos usando la clase Timer
    • 18.8 Hilo que implementa el reloj digital en un applet.
    • 18.9 Clase para sincronizar dos hilos
    • 18.10 Programa para dibujar la bandera de Bogotá.
    • 18.11 Programa que simula el movimiento de la tiera y la luna.
    • 18.12 Un reloj análogo con clases abstractas e hilos Timer
    • 18.13 Como acelerar un segundero usando JSpinner y un hilo
    • 18.14 Simular el "movimiento de 4 electrones"
    • 18.15 Ejercicios.
  • CAPITULO 19. EL MANEJO DEL MOUSE
    • 19.1 Interfaces para el manejo del ratón
    • 19.2 Eventos del ratón dentro de un marco
    • 19.3 Eventos del ratón dentro de lienzo
    • 19.4 Ejercicios
  • CAPITULO 20. LAS CLASES PARA CREAR CLIENTES Y SERVIDORES
    • 20.1 public class Socket extends Object
    • 20.2 public class ServerSocket extends Object
    • 20.3 Creación de un servidor de fecha
    • 20.4 Servidor eco
    • 20.5 Protocolo HTTP
    • 20.6 Estructuras de mensaje HTTP
    • 20.7 Cabeceras de petición
    • 20.8 Resultados de la petición
    • 20.9 Lectura de un archivo residente en un servidor
    • 20.10 La clase InetAddress
    • 20.11 Construcción de un servidor que reciba y devuelva mensajes
    • 20.12 Construcción de un cliente que reciba y devuelva mensajes
    • 20.13 La clase DatagramPacket para envio de datagramas
    • 20.14 La clase DatagramSocket
    • 20.15 Programa que envía un datagrama.
    • 20.16 Programa que recibe un datagrama.
    • 20.17 La clase URL
    • 20.18 La clase abstracta URLConnection
  • CAPITULO 21. BASES DE DATOS CON JDBC
    • 21.1 Bases de datos relacionales
    • 21.2 La clase Class
    • 21.3 Controladores para acceder a la base de datos
    • 21.4 La interface Driver.
    • 21.5 La clase Properties.
    • 21.6 La clase Connection.
    • 21.7 Creación de la fuente de datos.
    • 21.8 Conexión con una base de datos
    • 21.9 Instrucciones SQL para acceder a la base de datos
      • 21.9.1 Instrucción SQL insert
      • 21.9.2 Instrucción SQL select
      • 21.9.3 Instrucción SQL delete
      • 21.9.4 Instrucción SQL update
    • 21.10 La clase PreparedStatement
    • 21.11 Programa para insertar registros en una base de datos.
    • 21.12 La clase ResultSet
    • 21.13 Consulta a un registro de una base de datos.
    • 21.14 Programa para mostrar todas las filas de la tabla.
    • 21.15 Retiro de un registro de una base de datos.
    • 21.16 Actualización de un registro de una base de datos.
    • 21.17 Ejercicios
    • 21.18 Conexión con el servidor MySQL
  • CAPITULO 22. SERIALIZACION DE OBJETOS
    • 22.1 La clase ObjectOutputStream
    • 22.2 La clase ObjectInputStream
    • 22.3 La clase Serializable
    • 22.4 Ejercicios
  • CAPITULO 23. CLASES PARA EL MANEJO DE CADENAS DE CARACTERES
    • 23.1 La clase String
    • 23.2 Programa para des-encriptar una cadena
    • 23.3 La clase StringTokenizer
    • 23.4 La clase HashMap
    • 23.5 La clase ArrayList
    • 23.6 Proceso para encriptar una clave con RSA
    • 23.7 Ejercicios
    • 23.8 Proceso para des-encriptar una clave
  • CAPITULO 24. LAS CLASES NUMERICAS
    • 24.1 Funciones Matemáticas
    • 24.2 La clase Integer
    • 24.3 La clase Short
    • 24.4 La clase Long
    • 24.5 La clase Float
    • 24.6 La clase Double
    • 24.7 Ejercicios
  • CAPITULO 25. CLASES PARA EL MANEJO DE TIPOS Y TAMAÑOS DE LAS FUENTES
    • 25.1 La clase Font
    • 25.2 Clase abstract FontMetrics
  • CAPITULO 26. CLASES PARA EL MANEJO DE ARCHIVOS
    • 26.1 La clase File
    • 26.2 La clase FileReader
    • 26.3 La clase BufferedReader
    • 26.4 La clase FileWriter
    • 26.5 La clase BufferedWriter
    • 26.6 La clase FileInputStream
    • 26.7 La clase DataInputStream
    • 26.8 La clase FileOutputStream
    • 26.9 La clase DataOutputStream
    • 26.10 La clase RandomAccessFile
    • 26.11 La clase InputStream
    • 26.12 La clase OutputStream
    • 26.13 La clase System
    • 26.14 La clase PrintStream
  • CAPITULO 27. LAS CLASES CALENDAR, DATE, STACK Y VECTOR
    • 27.1 Clase abstract Calendar
    • 27.2 Clase Date
    • 27.3 La clase Stack
    • 27.4 Composición de funciones
    • 27.5 La clase Vector
  • CAPITULO 28. CLASES PARA EL MANEJO DE EXCEPCIONES
    • 28.1 Los bloques try y catch
    • 28.2 Lista de clase que manejan excepciones
    • 28.3 Instrucción throws
    • 28.4 Instrucción throw
    • 28.5 Ejercicios
  • CAPITULO 29. PROGRAMAS SWINGJAPPLET
    • 29.1 El método init()
    • 29.2 Ejecución de un Swing JApplet
    • 29.3 Marcos sin componentes en un Swing JApplet
    • 29.4 Algunos métodos de la clase JAppet
    • 29.5 Dibujo del segundero en un JApplet
    • 29.6 Validación de datos en una componente JTextField
    • 29.7 Ejercicios
    • 29.8 Dibujo de una figura en un JApplet
    • 29.9 JMenuBar en un JApplet
    • 29.10 Ejercicios
  • CAPITULO 30. COMPONENTES SWING
    • 30.1 Componente JFrame
    • 30.2 La componente JLabel
    • 30.3 Creación de Bordes
    • 30.4 Componente JButton
    • 30.5 Ejercicios
    • 30.6 La clase javax.swing.JComponent
    • 30.7 La clase javax.swing.AbstractButton
    • 30.8 Botónes de chequeo
    • 30.9 Botónes de dos estados
    • 30.10 Botónes de radio
    • 30.11 Ejercicios
    • 30.12 La componente JPanel
    • 30.13 La componente JTextField
    • 30.14 Las componentes JTextArea y JScrollPane
    • 30.15 Ejercicios
    • 30.16 La componente JPasswordField
    • 30.17 La componente JComboBox
    • 30.18 Ejercicios
    • 30.19 La componente JList
    • 30.20 Las componentes JMenuItem, JMenu y JMenuBar
    • 30.21 Manejo de un menú donde las opciones son íconos
    • 30.22 El juego del triqui
    • 30.23 Ejercicios
    • 30.24 La componente JTree
    • 30.25 La componente JSlider
    • 30.26 La componente JProgressBar
    • 30.27 Panel de etiquetas
    • 30.28 Ejercicios
    • 30.29 La clase JTable
    • 30.30 La interface TableModel
    • 30.31 La clase AbstractTableModel
    • 30.32 Creación de un modelo
    • 30.33 Programa para visualizar la tabla
    • 30.34 Modificación de los datos de una tabla
    • 30.35 Ejercicios
    • 30.36 La Clase JOptionPane
    • 30.37 La clase JPopupMenu
    • 30.38 La clase MouseEvent
    • 30.39 Programación de un menú de tipo JPopupMenu
    • 30.40 La clase JSpinner
    • 30.41 La clase SpinnerDateModel
    • 30.42 La clase SpinnerListModel
    • 30.43 La clase SpinnerNumberModel
    • 30.44 Tabla de eventos
  • CAPITULO 31. INTRODUCCION A LOS SERVLETS
    • 31.1 Configuración del ambiente para crear y ejecutar Servlets
    • 31.2 Creación de Servlets
    • 31.2.1 La clase HttpServlet
    • 31.2.2 La interface ServletRequest
    • 31.2.3 La clase HttpServletRequest
    • 31.2.4 La interface ServletResponse
    • 31.2.5 La clase HttpServletResponse
    • 31.2.6 La interface ServletConfig
    • 31.2.7 El archivo servlet.jar
    • 31.3 Compilación de un Servlet
    • 31.4 Ejecución de un Servlet
    • 31.5 Actualización del archivo web.xml
    • 31.6 Procesamiento de un formulario con el método POST
    • 31.7 Procesamiento de un formulario con el método GET
    • 31.8 Adjunta de una matriz de 3 X 3.
    • 31.9 Consulta a la tabla periodica de elementos
    • 31.10 Servlet para consultar una base de datos
    • 31.11 Ejercicios
  • CAPITULO 32. MANEJO DE LOS PUERTOS DE COMUNICACIONES
    • 32.1 Instalación del paquete javax.comm
    • 32.2 La clase CommPort
    • 32.3 Clase CommPortIdentifier extends Object
    • 32.4 Listado de los puertos del sistema.
    • 32.5 La clase ParallelPort
    • 32.6 La clase SerialPort
    • 32.7 La clase SerialPortEvent
    • 32.8 Captura de datos desde el puerto serial.
  • CAPITULO 33. API 2D
    • 33.1 La clase Graphics2D
    • 33.2 La clase Arc2D
    • 33.3 La clase Line2D
    • 33.4 La clase Point2D
    • 33.5 La clase Rectangle2D
    • 33.6 La clase RoundRectangle2D
    • 33.7 La clase Ellipse2D
    • 33.8 La clase AffineTransform
    • 33.9 La clase GradiantPaint
    • 33.10 La clase BasicStroke
    • 33.11 La clase QuadCurve2D
    • 33.12 La clase CubicCurve2D
    • 33.13 La clase GeneralPath
  • INDICES
    • Apéndice A. Tabla Ascii
    • Apéndice B. Palabras Reservadas
    • Apéndice C. Jerarquía de Operadores
    • Bibliografía
    • Indice Temático