Java Basico Platzi

148
Java Básico Anahí Salgado @anncode public class HolaMundo { public static void main(String[] args) { System.out.println(“Hola Mundo”); } }

Transcript of Java Basico Platzi

Java Básico

Anahí Salgado @anncode

public class HolaMundo {public static void main(String[] args) {

System.out.println(“Hola Mundo”);}

}

¿Java?

Anahí Salgado @anncode

•  Empezar rápidamente – C y C++

•  Escribir menos código – POO – Reutilización

•  Escribir mejor código – Buenas prácticas de

codificación

•  Desarrollar con mayor rapidez – Más simple que C++

Anahí Salgado @anncode

•  Lenguaje más utilizado a nivel mundial

•  Google •  Amazon •  Empresas financieras

–  Incrementa tus posibilidades de conseguir trabajo

–  Aumentará tus aspiraciones profesionales

Anahí Salgado @anncode

Plan de Certificaciones

Anahí Salgado @anncode

Anahí Salgado @anncode

1991

Anahí Salgado @anncode

Anahí Salgado @anncode

Anahí Salgado @anncode

James Goslin

Comunicación entre dispositivos Anahí Salgado @anncode

2009

Anahí Salgado @anncode

Anahí Salgado @anncode

•  Java es un lenguaje de

programación de alto nivel

–  Simple –  Orientado a Objetos –  Distribuido –  Multihilo –  Arquitectura Neutral –  Portable –  Alto desempeño –  Seguro

Anahí Salgado @anncode

Filosofía

Write Once

Anahí Salgado @anncode

Run Anywere

¿Qué versión elegir?

Java EE Java SE Java ME

Anahí Salgado @anncode

Java SE

Java Standard Edition

Anahí Salgado @anncode

Componentes

Anahí Salgado @anncode

JDK

Java Development Kit

JRE

Java Runtime Environment

Java Virtual Machine

Anahí Salgado @anncode

Programando con Java

Verifica que lo tengas instalado y configurado $ java -version$ javac

Anahí Salgado @anncode

Instalando JDK

Anahí Salgado @anncode

Instalando JDK Variables de entorno

Vamos a Mi Pc -> Propiedades,

•  Pestaña Opciones avanzadas, seleccionamos Variables de entorno -> Path

•  Hacemos click en Modificar y añadimos la ruta completa del directorio

•  “C:\Program Files\Java\jdk1.7.0_51\bin”.

Anahí Salgado @anncode

Hola Mundo

Anahí Salgado @anncode

•  Editor de Textos •  Consola de comandos (CMD)

Fases de programación

Editar

Anahí Salgado @anncode

Compilar

Cargar

Verificar Interpretar 1 2

3

4 4

Escribir código fuente

Compilador javac

Ejecución

Fases de programación

Anahí Salgado @anncode

El método Main

Método que es el punto de entrada de una aplicación Java.

Anahí Salgado @anncode

El método Main •  Declara todas las acciones realizadas por tu

aplicación

public static void main (String[] args) { // acciones

}

•  Sin él, la aplicación no se ejecutará, regresando el siguiente error: In class NoMain: void main(String args[]) no está definido.

Anahí Salgado @anncode

El método Main •  El método main contiene dos modificadores

requeridos, public y static. • No devuelve ningún valor, por lo que tiene un tipo de retorno de vacío. • El método principal tiene un identificador método (nombre) de ”main". • Acepta cero o más objetos de tipo String (String [] args). Esta sintaxis le permite escribir en los valores de la línea de comandos para ser utilizado por el programa mientras se está ejecutando.

Anahí Salgado @anncode

Usando un IDE (Eclipse) •  IDE (Integrated

Development Enviroment):

•  Es un entorno de programación que ha sido empaquetado como un programa de aplicación. •  Editor de código •  Compilador •  Depurador •  Constructor de

interfaz Gráfica

Hola Mundo

Anahí Salgado @anncode

Tipos de Datos

Anahí Salgado @anncode

Tipos de Datos

•  DEFINICIÓN: – Un espacio de memoria al que le asignamos

un contenido, puede ser un valor numérico, de tipo carácter o cadena de caracteres.

•  Por ejemplo: – a = 8 – a = 56 – a = b

Anahí Salgado @anncode

Tipos de Datos

Tipo Primitivo Tipo Objeto

Anahí Salgado @anncode

Tipos ENTEROS Anahí Salgado @anncode

byte Rango

-128 a 127

short Rango

-32,768 a 32,7676

int Rango

-2,147,483,648 to 2,147,483,647

long Rango

-9,223,372,036,854,775,808

to +9,223,372,036,85

4,775,807

1 byte

2 bytes

4 bytes

8 bytes

Tipos PUNTO FLOTANTE Anahí Salgado @anncode

float Rango

1.40129846432481707e-45 to

3.40282346638528860e+38

double Rango

4.94065645841246544e-324d to

1.79769313486231570e+308d

4 byte

8 bytes

Tipos TEXTO Anahí Salgado @anncode

char Rango

Unicode 2 byte

Tipos LOGICOS Anahí Salgado @anncode

boolean Rango

true o false 1 bit

Nombres en Java

•  Java sigue la siguiente convención para nombrar variables

–  Es sensible al uso de mayúsculas y minúsculas –  Debe comenzar con una letra, se permite usar $ y “_” –  Las letras posteriores pueden ser letras, números, $ y “_” –  Por convención se debe usar la técnica “camello” –  También por convención, las constantes se escriben en

mayúsculas y contienen “_”.

Anahí Salgado @anncode

Upper Camel Case Lower Camel Case

CAST

Anahí Salgado @anncode

En la programación hay situaciones donde se necesita cambiar el tipo de dato

Cast

•  Un Cast es una operación en Java que:

– Da como resultado una variable con un tipo de datos diferente a su fuente.

– Puede usarse entre tipos de datos primitivos, instancias de una clase y tipos de objetos primitivos.

Anahí Salgado @anncode

Cast Anahí Salgado @anncode

Cast a tipos primitivos

•  Se puede realizar el cast para todos los tipos de datos primitivos, con excepción de boolean.

•  A menudo, el tipo cast de tipos primitivos se realiza en situaciones donde el tipo del resultado es más grande que su tipo original.

Anahí Salgado @anncode

Cast a tipos primitivos

•  Por lo tanto, a menudo se puede usar un byte o char como un int, un int como un long, un int como un float y como un doble también.

Anahí Salgado @anncode

Arrays

Anahí Salgado @anncode

Arrays

•  Los arreglos se pueden definir como objetos en los que podemos guardar mas de una variable

Anahí Salgado @anncode

Arrays

•  La estructura de declaración de un arreglo es la siguiente:

tipo_dedato[] nombre_variable;

tipo_dedato nombre_variable[];

Anahí Salgado @anncode

Arrays. Definir tamaño

•  Para asignar a un arreglo su tamaño o capacidad, se hace de la siguiente forma:

arreglo = new tipo_dedato[capacidad];

Anahí Salgado @anncode

Arrays. Asignar valores

•  Una vez se tiene declarado un arreglo, y al mismo se le ha asignado un tamaño o capacidad, podemos accesar a los datos dentro del mismo y asignarle valores.

arreglo[indicador] = valor;

Anahí Salgado @anncode

OPERADORES

Anahí Salgado @anncode

Una vez que el código fuente de Java tienen variables, las podemos usar para crear y formar expresiones que

regresen valores.

Operadores aritméticos

•  Son los símbolos que se usan para realizar aritmética básica en el lenguaje de programación java

Anahí Salgado @anncode

Concatenación de cadenas

•  El operador + puede usarse para agregar o concatenar cadenas

•  Unión de dos elementos.

System.out.println (“El balance de la cuenta es: “ + balance );

Anahí Salgado @anncode

Operadores de Asignación

= += -= /= %=

x += 2; x = x + 2; Anahí Salgado @anncode

Operadores de incremento y decremento

•  Incremento: Se usan para agregar un 1 al valor de la expresión ++

•  Decremento: Se usan para substraer un 1 del valor de la expresión. --

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Prefijo y postfijo

•  Un prefijo se refiere a colocar un operador antes del operando ++i --i

•  Un posfijo se refiere a colocar un operador después del operando. i++ i--

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Incremento

Anahí Salgado @anncode

Equidad y operadores relacionales

•  Todas las expresiones creadas con equidad y operadores relacionales regresaran un valor booleano, dependiendo si la comparación se realiza o no.

Anahí Salgado @anncode

Equidad y operadores relacionales

•  Hace uso de dos operandos, uno en cada lado del operador.

•  Los operadores de equidad se describen a continuación:

Anahí Salgado @anncode

•  Los operadores relacionales se describen a continuación:

Equidad y operadores relacionales

Anahí Salgado @anncode

•  Combinan expresiones que regresar un valor boolean

AND &&

OR || NOT !

Operadores lógicos

Anahí Salgado @anncode

Operadores lógicos

Anahí Salgado @anncode

CONTROL FLUJO

Anahí Salgado @anncode

Las sentencias de código en java son ejecutadas secuencialmente desde arriba hasta abajo en el orden en que van apareciendo.

Sin embargo podemos controlar el flujo usando sentencias condicionales, ciclos, etc.

If/Else

•  Un condicional es una expresión booleana.

•  La sentencia se ejecuta solamente si la expresión booleana es verdadera. if (condición) {

instrucciones} else {

instrucciones}

Anahí Salgado @anncode

Switch •  A diferencia de sentencias if / else, la

sentencia switch puede tener un número de posibles rutas de ejecución

Anahí Salgado @anncode

Cliclo While

•  Se ejecuta continuamente un bloque de código mientras una condición particular, es cierto. Su sintaxis se puede expresar como:

while (condicion) { //instrucciones }

Anahí Salgado @anncode

Cliclo For

•  La sentencia proporciona una forma compacta para iterar sobre un rango de valores.

for (inicializa; fin-condicion; incremento) { instrucciones

}

Anahí Salgado @anncode

Cliclo For extendido foreach

•  Es más fácil para recorrer colecciones de datos sin necesidad de conocer o definir el número de elementos a recorrer

for ( TipoDato elemento : coleccion ) {        Instrucciones}

Anahí Salgado @anncode

PROGRAMACIÓN ORIENTADA A OBJETOS

(POO)

Anahí Salgado @anncode

Programación Orientada a Objetos

Una nueva forma de pensar

Anahí Salgado @anncode

Programación Orientada a Objetos

Se trata de descomponer el problema en subproblemas y más

subproblemas

Anahí Salgado @anncode

Programación Orientada a Objetos

Definir un Dominio del Problema PROBLEM DOMAIN

Recopilación de requisitos del cliente y

tener por escrito un alcance

¿Qué queremos lograr?

Anahí Salgado @anncode

Programación Orientada a Objetos

Fijarnos en el

escenario del problema y tratar de simularlo con objetos

Anahí Salgado @anncode

Programación Orientada a Objetos

Identificar mis objetos

Anahí Salgado @anncode

•  Pueden ser Físicos o Conceptuales •  Los objetos tienen atributos (características)

•  tamaño •  nombre •  forma •  representan el estado del objeto

•  Los objetos tienen operaciones (las cosas que puede hacer el objeto)

Programación Orientada a Objetos

Anahí Salgado @anncode

•  Los nombres de los objetos por lo general son sustantivos

cuenta, cliente•  Los atributos de los objetos también

•  Las operaciones suelen ser verbos o sustantivo y verbo

mostar, Enviar Pedido

Programación Orientada a Objetos

Anahí Salgado @anncode

•  Vehiculo

atributos: •  matricula •  marca •  modelo •  año

comportamiento: •  arrancar •  frenar •  reversa

Programación Orientada a Objetos

Anahí Salgado @anncode

•  Diseñando un modelo de Clase

•  Una Clase es la forma en como defines tu objeto

•  Las Clases son descriptivas – plantillas

Programación Orientada a Objetos

Anahí Salgado @anncode

•  Clase Vehiculoatributos: •  matricula •  marca •  modelo •  año

comportamiento: •  arrancar •  frenar •  reversa

Byte Short

Integer Long Float

Double Characer Boolean

String

Tipos Datos Objeto

Anahí Salgado @anncode

Variables ≠ Objetos

•  Variables son entidades elementales (muy sencillas)

–  Un número –  Un carácter –  Un valor verdadero

falso

•  Objetos son entidades complejas que pueden estar formadas por la agrupación de muchas variables y métodos.

Anahí Salgado @anncode

CODIGO

Anahí Salgado @anncode

Declaración de métodos

•  Una declaración de un método es un elemento de código en Java que:

–  Consiste de cuatro partes: tipo de datos de regreso, nombre, argumentos y cuerpo entre llaves.

public int suma (int a int b)

Anahí Salgado @anncode

mod. acceso valor regreso nombre argumentos

Declaración de métodos

–  Tiene un valor de regreso explícitamente invocado en su cuerpo usando la palabra reservada return.

–  No regresa ningún valor si es declarado void.

–  No puede declararse dentro de otro método.

public int suma(int a int b){return a+b;

} Anahí Salgado

@anncode

Control de acceso

Anahí Salgado @anncode

Constructor

Anahí Salgado @anncode

•  Un constructor es un conjunto se sentencias que: –  Crea nuevas instancias de una clase. –  Tiene el mismo nombre que la clase que inicializa. –  Usa la palabra reservada new para invocarlo. –  Usa cero o más argumentos contenidos dentro de

los paréntesis que siguen al nombre. –  No regresa un valor.

•  La sintaxis para llamarlo es:

TipoClase variable = new TipoClase(argumentos);

Getters y Setters

•  Un conjunto de métodos se crean por lo general en una clase para leer/escribir específicamente los valores de las variables miembro.

•  Estos se llaman getters - se utilizan para obtener los valores

•  Y setters - se utilizan para cambiar los valores de las variables miembro.

Anahí Salgado @anncode

Getters y Setters

•  Los getters y setters son cruciales en las clases de Java, ya que se utilizan para gestionar el estado de un objeto.

Anahí Salgado @anncode

List

•  Una list es una interfaz del framework de collections de Java que: – Contiene datos en un orden definido y

puede tener elementos duplicados. – Tiene implementaciones generales de

ArrayList y Vector. – Requiere del paquete java.util – Almacena elementos por medio de un

índice entero, iniciando con cero. – Extiende a la interfaz Collection.

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Métodos de la interfaz list

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Clases que implementan la interfaz List

•  La implementación general de la interfaz List son las clases ArrayList y Vector.

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Clases que implementan la interfaz List

•  La clase ArrayList almacena un arreglo que puede cambiar de tamaño, tiene una capacidad especifica que crece automáticamente.

Ing. Anahí Salgado - @anncode

ArrayList a = new ArrayList(); a.add("Lenguaje"); a.add(3); a.add('a'); a.add(23.5);

Anahí Salgado @anncode

Clases que implementan la interfaz List

•  Un vector es similar a un array, la diferencia estriba en que un vector crece automáticamente cuando alcanza la dimensión inicial máxima.

•  Además, proporciona métodos adicionales para añadir, eliminar elementos, e insertar elementos entre otros dos existentes.

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Clases que implementan la interfaz List

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

¿Cómo obtener datos de un List?

•  La interfaz List provee de múltiples formas para la obtención de datos. El método más común para obtener los datos es get. Este método permite obtener un elemento de una lista por medio de un índice.

•  miLista.get(i);

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Extendiendo una clase

•  En algunas circunstancias, es necesario utilizar el estado y comportamiento de una clase en conjunto con otras clases.

•  La jerarquía de herencia en java permite tener esta opción al escribir código.

Anahí Salgado @anncode

Herencia

Ing. Anahí Salgado - @anncode

•  Se establece una relación padre-hijo entre dos objetos diferentes.

•  La idea de la herencia es permitir la creación de nuevas clases basadas en clases existentes.

Anahí Salgado @anncode

Herencia

Ing. Anahí Salgado - @anncode

•  La herencia sirve para crear objetos que incorporen propiedades y métodos de otros objetos.

•  Así podremos construir unos objetos a partir de otros sin tener que reescribirlo todo.

Anahí Salgado @anncode

Subclase y Súper Clase •  Una subclase es una clase que: – Hereda de una súper clase. – Es declarada con la palabra reservada extends – Puede acceder miembros de la súper clase con

el mismo nombre con la palabra super y la notación punto.

–  Se debe tener una implementación de los métodos de la superclase y constructores en su cuerpo.

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Sobreescritura de constructores

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Miembros heredados en la subclase

•  Una subclase hereda todos los miembros de su súper clase que están declarados como public o protected.

•  Los miembros heredados pueden tener múltiples formas dentro de la subclase y superclase, esto se conoce como polimorfismo.

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Sobreescritura de constructores

•  La sobreescritura de constructores es la definición de un constructor en una subclase usando los miembros heredados de la superclase, con argumentos diferentes.

•  Tu sobrescribes constructores simplemente cambiando cualquier argumento que sea necesario.

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Sobreescritura de constructores

•  El constructor de la subclase invoca al constructor de la superclase.

•  Para ello se incluye, obligatoriamente, la palabra clave super como primera línea del constructor de la subclase.

•  La palabra super irá seguida de paréntesis dentro de los cuales pondremos los parámetros que requiera el constructor de la superclase al que queramos invocar.

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Sobreescritura de constructores

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Polimorfismo

•  Posibilidad de construir varios métodos con el mismo nombre, pero con relación a la clase a la que pertenece cada uno, con comportamientos diferentes.

Anahí Salgado @anncode

Implementando Interfaces

•  En Java una interface es una clase abstracta pura, es decir una clase donde todos los métodos son abstractos (no se implementa ninguno).

•  Permite al diseñador de clases establecer la forma de una clase (nombres de métodos, listas de argumentos y tipos de retorno, pero no bloques de código).

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Java I/O

Anahí Salgado @anncode

Streams

•  En Java la información se escribe y lee de diferentes lugares a través del uso de streams (flujos).

•  El paquete java.io contiene muchas clases streams. Dependiendo de que tipo de I/O se necesita, se puede ocupar el stream más adecuado.

Anahí Salgado @anncode

Streams

•  Entre una fuente y un destino fluye una secuencia de datos

Anahí Salgado @anncode

Clasificación de Flujos

Anahí Salgado @anncode

Input Stream

•  Los streams de entrada se usan para leer bytes en un programa. La fuente de los datos puede ser un archivo, un soquet u otra parte del programa.

Anahí Salgado @anncode

Input Stream

•  Java provee otros input stream que extienden la funcionalidad de los anteriores para hacer la lectura más conveniente.

•  Entre las clases se tienen:

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

OutputStreams

•  Los output streams se usan para escribir bytes de datos a un destino.

•  Para crear un nuevo output stream, necesitas especificar un destino para los datos.

Anahí Salgado @anncode

OutputStreams

•  Java a su vez provee otros output stream que extienden la funcionalidad de los anteriores para hacer la escritura más conveniente.

•  Entre las clases se tienen:

Anahí Salgado @anncode

Readers

•  Los readers permiten leer datos en una aplicación, estos datos se leen como caracteres.

Anahí Salgado @anncode

Readers

•  Java provee otros readers que extienden la funcionalidad de los anteriores para hacer la lectura más conveniente.

Anahí Salgado @anncode

Writers •  Los writers se usan para escribir caracteres a

un destino.

•  Java a su vez provee otros writers que extienden la funcionalidad

de los anteriores para hacer la escritura más conveniente.

Anahí Salgado @anncode

Convirtiendo entre bytes y caracteres

•  Los reader y writer trabajan con caracteres

•  Mientras que los stream trabajan con bytes.

•  Algunas veces es necesario ocupar ambos para obtener la funcionalidad requerida.

Anahí Salgado @anncode

Convirtiendo entre bytes y caracteres

•  La clase InputStreamReader permite leer caracteres de un flujo de bytes, por ejemplo:

InputStream in; InputStreamReader rd = new InputStreamReader(in);

•  La clase OutputStreamWriter permite escribir caracteres aun flujo de bytes, por ejemplo:

OutputStream out; OutputStreamWriter wt= new OutputStreamWriter(out);

Anahí Salgado @anncode

Jerarquía de flujos de bytes

Anahí Salgado @anncode

Jerarquía de flujos de caracteres

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Entrada de caracteres

Anahí Salgado @anncode

Combinación de flujos

Anahí Salgado @anncode

Escribiendo Archivos

•  La habilidad de escribir archivos permite la persistencia de los datos.

•  Algunas razones para escribir archivos son: – Dar al usuario la posibilidad de salvar su

trabajo. – Respaldar datos. – Exportar datos de un sistema a otro.

Anahí Salgado @anncode

Pasos para escribir un archivo

•  Los pasos que usualmente se siguen para escribir un archivo son: 1.  Abrir el archivo. 2.  Escribir algunos datos. 3.  Sí hay más datos, repetir el paso 2. 4.  Cerrar el archivo.

Anahí Salgado @anncode

Pasos para leer un archivo

Leer un archivo usualmente envuelve los siguientes pasos:

1.  Abrir el archivo 2.  Leer algunos datos 3.  Procesar los datos 4.  Si hay más datos, repetir el paso 2. 5.  Cerrar el archivo.

Anahí Salgado @anncode

Java Básico

Anahí Salgado @anncode

public class HolaMundo {public static void main(String[] args) {

System.out.println(“Hola Mundo”);}

}

Hilos Threads

Anahí Salgado @anncode

Hilos

Un Hilo es un trozo de código de nuestro programa que puede ser ejecutado al

mismo tiempo que otro.

Anahí Salgado @anncode

¿Cuál de las dos opciones siguientes elegirías?

•  A) Descargar las imágenes 100 imágenes, haciendo esperar al usuario con una pantalla de “cargando” hasta que se descargan todas. Luego podrá ver el listado con las imágenes.

•  B) Que mientras se descargan las 100 imágenes, el usuario pueda ir viendo y usando las que ya se han descargado.

Anahí Salgado @anncode

Hilos – Threads

•  Threading es la creación de múltiples líneas de flujo de control a través de un programa, o creando múltiples threads.

•  Los creas extendiendo la clase Thread o

implementando la interfaz Runnable.

Anahí Salgado @anncode

Hilos – Threads

Cuando se ejecuta, los threads corren al mismo tiempo pero realizan operaciones separadas.

Anahí Salgado @anncode

Ciclo de vida de un thread

1. Comienza cuando una nueva instancia de un thread se crea, llamando a este estado New o Born.

2. Cuando es iniciado, el thread pasa al estado Runnable o Ready.

Anahí Salgado @anncode

Ciclo de vida de un thread

3. Después, se mueve al estado Running, recibiendo tiempo del procesador de la computadora.

4. Una vez estando en Running, el thread tiene varias opciones para su siguiente estado dependiendo de su propósito, como Dead, Blocked, Deadlock, Waiting o Sleeping.

Anahí Salgado @anncode

Ciclo de vida de un thread

Anahí Salgado @anncode

Métodos de un thread

•  Un objeto Thread se puede entender como el panel de control sobre una tarea o hilo de ejecución.

•  Dispone de métodos para controlar el comportamiento de las tareas

Anahí Salgado @anncode

Métodos de un thread

Anahí Salgado @anncode

Anahí Salgado @anncode

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Ejecutando threads

•  El método run invocado sobre un objeto thread no hace nada. En su lugar, debes hacer uno de esas dos cosas.

•  Puedes crear una clase que extiende a la clase Thread y entonces crear un nuevo método run para esa clase.

Anahí Salgado @anncode

•  De forma alternativa, puedes crear un objeto Runnable usando la interfaz Runnable.

•  Una vez creado, puedes directamente usar el método run de la interfaz Runnable.

Anahí Salgado @anncode

Ejecutando threads

Prioridad

•  Los threads se ejecutan en el orden de su prioridad.

•  Los threads con alta prioridad pueden

continuamente ganar los recursos del equipo a los thread con prioridad más baja.

•  Esto puede causar que los threads con baja prioridad no se ejecuten.

Anahí Salgado @anncode

Prioridad

Puedes trabajar con esta característica usando sincronización y poniendo

horarios a los threads.

Anahí Salgado @anncode

Prioridad

Puedes usar el método yield para poner en calendarización y usar la sincronización

para definir la prioridad de los threads a través

del método setPriority.

Anahí Salgado @anncode

Prioridad

Ing. Anahí Salgado - @anncode

Anahí Salgado @anncode

Anahí Salgado @anncode

Java Básico

Anahí Salgado @anncode

public class HolaMundo {public static void main(String[] args) {

System.out.println(“Hola Mundo”);}

}

JDBC Java DataBase Connectivity

Anahí Salgado @anncode

JDBC

•  Es una API que permite la ejecución de operaciones sobre bases de datos desde el lenguaje de programación Java.

Anahí Salgado @anncode

Paquete java.sql

•  JDBC ofrece el paquete java.sql, en el que existen clases muy útiles para trabajar con bases de datos.

Anahí Salgado @anncode

Diagrama E-R

Anahí Salgado @anncode

Java Básico

Anahí Salgado @anncode

public class HolaMundo {public static void main(String[] args) {

System.out.println(“Hola Mundo”);}

}