Programación en Java
El curso de Programación en Java abarca los aspectos del lenguaje más frecuentemente utilizados en la programación de aplicaciones sencillas para cliente. Persigue dos objetivos:
- Dotar al alumno de unos conocimientos del lenguaje usando la plataforma J2SE (Java 2 Standard Edition), que le permitan desarrollar aplicaciones para cliente sencillas.
- Preparar al alumno para que sea capaz de iniciarse en la programación enfocada a servidor usando la plataforma Java EE (Java Enterprise Edition), una de las formas de programar en Java más ampliamente extendida a nivel empresarial.
No es un curso que exija conocimientos de programación, aunque si se tienen, se facilita bastante su seguimiento. El curso cuenta con ejemplos y ejercicios que tratan de facilitar la comprensión y asimilación de los contenidos teóricos relacionados con el lenguaje. Conviene que los ejercicios se intenten hacer una vez estudiados y comprendidos los ejemplos.
A cualquier persona interesada en la programación. Desde personas que no conocen ningún lenguaje de programación, pero quieren iniciarse en un mundo que cada día demanda más profesionales cualificados, hasta programadores que conocen otros lenguajes, analistas, jefes de proyecto, consultores, etc. que formen parte del departamento de Informática de una empresa. Muy recomendable para el seguimiento del curso, aunque no imprescindible, es tener conocimientos de otros lenguajes de programación como C, C++, Pascal, Delphi, Perl, Python, C#, etc. o, en su defecto, conocimiento de las estructuras básicas de programación empleadas en todos los lenguajes, como bucles, condicionales, declaración de variables, etc.
Dotar al alumno de la metodología y los fundamentos de la programación en Java usando la plataforma J2SE (Java 2 Standard Edition) y prepararlo para enfrentarse a la programación enfocada a servidor usando la plataforma Java EE (Java Enterprise Edition), una de las formas de programar en Java más ampliamente extendida a nivel empresarial. Al finalizar el curso, el alumno estará capacitado para desarrollar aplicaciones sencillas enfocadas al cliente e iniciarse en la programación orientada a servidor.
1. Introducción
Introducción.
Objetivos
Cuestiones básicas de Java
¿Qué es Java?
Concepto de programa
Lenguajes de programación
Lenguajes de programación de alto nivel y de bajo nivel
Hardware y software (Arquitectura ordenador + sistema operativo)
Plataforma
Software Java
JRE
Componentes
Java SE (Java Plataform Standard Edition)
Java EE (Java Plataform Enterprise Edition)
Java ME (Java Plataform Micro Edition)
Descarga e instalación de JDK
Programación orientada a objetos
Introducción
Objetos
Clases
Modelo de objetos
Ejemplos de herencia
Programa Java
Métodos
Declaración genérica de un método
Nomenclatura oficial
Escribir un programa Java
Entorno de desarrollo
JDK
Eclipse versión Juno
Resumen
Ejemplos
Ejemplo 1
Ejemplo 2
Ejemplo 3
Ejemplo 4
Ejemplo 5
Ejemplo 6
Ejemplo 7
Ejemplo 8
2. Variables
Variables.
Objetivos.
Concepto de variable
Variables primitivas
Variables primitivas de tipo numérico
Variables primitivas de tipo lógico (booleanas)
Variables de tipo char (caracter)
Variables referenciadas
Proceso de creación de una variable
Nombre de variables
Declaración
Inicialización
Modificación del valor
Casting o transformaciones de tipo
Alcance de variables
Variables locales
Variables de instancia
Variables estáticas o de clase
Métodos estáticos o de clase
Estructuras básicas de programación
Expresiones
Operadores
Condicional if .. else
Condicional switch
Bucle For
Bucle For Extendido
Bucle while
Bucle do … while
Sentencias break, return y continue
Bucles anidados
3. Clase String. Introducción a los flujos
Clase String. Introducción a los flujos.
Objetivos.
Clase String.
Clase asociada
Constructores
Métodos principales
Introducción a los flujos (streams)
Captura de datos desde el teclado
4. Excepciones
Excepciones.
Objetivos.
Definición.
Causas de excepciones
Bloque try … catch … finally.
try
catch
Objeto Exception.
finally
throws
Sintaxis.
Cómo tratar las excepciones.
Excepción no controlada.
Excepción controlada con el bloque try.
Controlar IOException con bloque try.
Combinar el uso de throws con try.
Uso del método printStackTrace().
5. Arrays
Arrays.
Objetivos.
Concepto de array.
Ejemplos.
Ejemplo 1. Operaciones típicas con arrays.
Ejemplo 2. Error de tamaño.
Ejemplo 3. Inicializar elementos.
6. Constructores, herencia e interfaces
Constructores, herencia e interfaces
Objetivo
Constructores.
Constructores de clase.
Destructores
Palabra reservada this
Sobrecarga de métodos
Sobrecarga de constructores
Herencia
Notas básicas sobre herencia
Polimorfismo
Instanceof
Palabra reservada super
Interfaces
Contenido de una interface
Implementación de interfaces en una clase
Creación de interfaces propias
Interfaces muy usadas que forman parte de la API
7. Paquetes y modificadores de acceso
Paquetes y modificadores de acceso
Objetivo
Paquetes
Características
Cómo utilizar paquetes
Visibilidad de los paquetes
Paquetes Estandard en Java
Paquete virtual
Creación de paquetes propios
Ejemplos de uso de paquetes
Ejecución de clases de paquetes externos
Modificadores de acceso
Tipos de modificadores
Ejemplos
8. Gestión de ficheros
Gestión de ficheros
Objetivos
Flujos
Tipos de flujos
Metodología de trabajo
Flujos de bytes
Flujo de lectura de bytes
Ejemplos
Flujo de escritura de bytes
Ejemplos
Flujos de caracteres
Flujo de lectura de caracteres
Ejemplos
Flujo de escritura de caracteres
Clase File
9. Estructuras de datos. Paquete java.util
Estructuras de datos. Paquete java.util
Objetivos
Clase StringBuffer
Clase StringTokenizer
Clase Vector
Clase Hashtable
10. Gestión del tiempo
Gestión del tiempo
Objetivos
Gestión del tiempo en Java
Clase Date
Formato de fechas
Clase DateFormat
MÉTODOS
Clase Locale
MÉTODOS
Clase SimpleDateFormat
CONSTRUCTORES
MÉTODOS
Clase NumberFormat
MÉTODOS
Clase GregorianCalendar
CONSTRUCTORES
MÉTODOS
11. Threads
Threads
Objetivo
Threads
Clase Thread
Creación de hilos
Ciclo de vida de un hilo
Sincronía de hilos
12. Interfaces gráficas de usuario (GUIs)
Interfaces gráficas de usuario (GUIs)
Objetivos
Concepto de interface gráfica
Estructura AWT
Elementos de una GUI
Agregar componentes a un contenedor
Métodos de Component muy usados en el diseño de GUIs
Estudio de componentes
Botones
Etiquetas
Cuadros de texto
Áreas de texto
Casillas de verificación
Botones de opción (radio buttons)
Listas desplegables
Listas desplazables
Administradores de diseño
FlowLayout
BorderLayout
GridLayout
Otros contenedores
Paneles
Frames o ventanas
Canvas
Menús
13. Gestión de eventos
Gestión de eventos
Objetivos
Qué es un evento
Tipos de eventos
Eventos de bajo nivel
Eventos de alto nivel
Gestión de eventos
Modelo de propagación de eventos
Modelo de delegación de eventos
OBJETOS GENERADORES DE EVENTOS
OBJETOS ASOCIADOS A LOS EVENTOS
CLASES RESPONDEDORAS
Metodología de gestión de eventos
Eventos de acción
Eventos de ventana
Clases adaptadoras
Eventos de ratón
Eventos de teclado
Métodos importantes de java.awt.event.KeyEvent:
Ejemplos
14. Programación en red. Paquete java.net
Programación en red. Paquete java.net
Objetivos
Programación en red
Arquitectura cliente-servidor
Tipos de protocolo
Identificación de un servidor
Clase URL
getInputStream y getOutputStream
Clases Socket y ServerSocket
Clase ServerSocket
Clase Socket
