SlideShare una empresa de Scribd logo
1 de 28
Java – Modulo 1
Introducción y Fundamentos del
lenguaje de programación Java
Contenido
· Características del lenguaje.
· Breve historia (origen y versiones).
· Variables y Tipos de Datos.
· Estructuras de Decisión.
· Ciclos iterativos.
· Datos estructurados (vs. Clases).
· Introducción a la POO.
· Uso básico de la herramienta de desarrollo.
Breve Historia
Java fue diseñado en 1990 por James
Gosling, de Sun Microsystems
 Fue diseñado antes de que diese comienzo la
era World Wide Web.
 Software para dispositivos electrónicos:
calculadoras, microondas y la televisión
interactiva.
Lenguaje que independiente de la
plataforma
Breve Historia
El objetivo fue crear un nuevo lenguaje de
programación lo más sencillo posible, con
el objeto de que se pudiese adaptar con
facilidad a cualquier entorno de ejecución.
Se conjuntaron las características esenciales
que debía tener un lenguaje de
programación moderno y potente.
¿Por qué Java?
Portabilidad: tanto del código fuente como del
“bytecode”.
Más soporte en el lenguaje. Una amplia librería de
Clases.
Manejo de Errores.
No usa apuntadores. (garbage collection)
El manejo de threads es parte del lenguaje.
Carga dinámica del las clases y una “caja” segura
para le ejecución de código remoto.
¿Qué es Java?
“ Es un lenguaje simple, orientado a
Objetos, Distribuido, interpretado, robusto,
seguro, de arquitectura neutral, portable, de
alto rendimiento, multihilos, y dinámico”
- Sun
¿Qué es Java?
Un lenguaje de Programación
 Definido por Gosling, Joy y Steele en la especificación
del lenguaje Java.
Una plataforma
 Una definición de una máquina virtual (JVM).
 Ambientes de ejecución para diferentes “hardwares”.
Una librería de clases
 Un conjunto estándar de APIs () : GUI,
almacenamiento de datos, E/S, redes, etc.
Características
Simple
Seguro
Portable
Orientado a Objetos
Robusto
Multihilos
De Arquitectura
neutral
Interpretado
Alto Rendimiento
Distribuido
Dinámico
Caracteristicas (cont...)
Simple
 Fácil de aprender, sintaxis de C/C++, versión
simplificada de C++.
Seguro
 Los applets pueden ejecutarse sin temor a virus
o a la violación de acceso a información
privada.
Portable
 Generación de código intermedio: Bytecode
Caracteristicas (cont...)
Robusto
 Localización temprana de errores
 Minimización de errores comunes de programación.
 Verificaciones a tiempo de compilación y ejecución.
 Fuertemente tipado.
Multihilos
 Permite hacer programas que realicen varias cosas al
mismo tiempo. Facilita la creación de sistemas
interactivos.
De Arquitectura neutral
La máquina Virtual Java (JVM)
Puede verse como una computadora abstracta que
es definida por una especificación. Es una
máquina imaginaria que se implementa por
software .
Podemos estar hablando de:
 La especificación abstracta.
 Una implementación concreta
 Una instancia de tiempo de ejecución
Sun publicó las especificaciones para la JVM para
asegurar la portabilidad de las aplicaciones.
La máquina Virtual Java
Cada aplicación Java se ejecuta dentro de
una instancia de tiempo de aplicación de
alguna implementación concreta para la
especificación abstracta.
La máquina Virtual Java
Código fuenteCódigo fuente
Compilador JavaCompilador Java
Byte-codesByte-codes
Win32 JVMWin32 JVM
Código máquina
Win32
Código máquina
Win32
Macintosh JVMMacintosh JVM UNIX JVMUNIX JVM
Código máquina
Macintosh
Código máquina
Macintosh
Código máquina
UNIX
Código máquina
UNIX
Ivette C. Martínez - Héctor Palacios
El API de Java
Es una colección de “partes” de software
que brindan al usuario “utilidades”. Ejm:
GUI.
Está formado por librerías o paquetes
relacionados.
Compilación y ejecución
HelloWorld.java
javac HelloWorld.java
java HelloWorld HelloWorld.class
compilar
correr
bytecode
Codigo fuente
Elementos del lenguaje
Declaraciones
Tipos de Datos
Operadores
Estructuras de control
Clases y Objetos
Paquetes
Declaraciones
Declaración de Variables
 <tipo> <variable>;
 <tipo> <var1>, <var2>, ..., <varn>;
 <tipo> <var1> = <valor>;
Ejemplos
 int x,y,z;
 int x = 9;
 boolean terminar = false;
 Cliente = new Cliente();
Asignaciones
Asignaciones
 <tipo> <variable> = <valor>;
 <tipo> <variable>;
<otras instrucciones>...
<variable> = <valor>;
Ejemplo
 int x = 4; //Declaracion con asignación
 x = 9; //Se asume que x está definida
 c1 = new Cliente(); //Se asume que Cliente
//y c1 están definidos
Tipos de Datos
Tipos primitivos:
 boolean true o false
 char unicode! (16 bits)
 byte entero de 8 bits con signo.
 short entero de 16 bits con signo.
 int entero de 32 bits con signo.
 long entero de 64 bits con signo.
 float,double IEEE 754 floating point
No es un int
Otros tipos de datos.
Tipos compuestos
 Clases
 Arreglos
Los strings son soportados mediante una
clase built-in class denominada String.
Conversiones de tipos
Conversión entre los tipos enteros y punto
flotante.
 Incluye char
No hay conversión automatica con el tipo
boolean!
Las conversiones se pueden forzar mediante
una operación de casting – con la misma
sintaxis de C/C++.
int i = (int) 1.345;
Operadores
Asignación: =, +=, -=, *=, …
Numéricos: +, -, *, /, %, ++, --, …
Relacionales: ==. !=, <, >, <=, >=, …
Booleanos: &&, ||, !
De Bits: &, |, ^, ~, <<, >>, …
Comentarios
// comentario
Los caracteres desde // hasta el final de la línea
son ignorados.
/* comentario */
Los caracteres entre /* y */ son ignorados
/** comentario */
Los caracteres entre /** y */son ignorados y se
incluyen en la generación autómatica de la
documentación.
Identificadores
Nombre dado a una variable, un método o una
clase.
Comienzan con una letra Unicode (incluyendo _
and $) y seguido de letras y digitos.
Pueden ser de cualquier longitud.
Ejemplos:
 Apellido
 Hora
 $PorMenos
Paquetes
Se usan para encapsular los datos de manera
automática.
Los paquetes de clases se cargan con la
palabra clave import.
Ejemplo:
import java.Date;
import java.awt.*;
import miPaquete.miClase;
Tipos de Clases en Java
abstract. Una clase abstracta no se instancia, sino
que se utiliza como clase base para la herencia.
final. Una clase final se declara como la clase que
termina una cadena de herencia.
public. Las clases public son accesibles desde
otras clases, bien sea directamente o por herencia.
Para acceder desde otros paquetes, primero tienen
que ser importadas.
Niveles de acceso a métodos y
atributos
public. Cualquier clase desde cualquier lugar
puede acceder a las variables y métodos.
protected o friendly. Sólo las subclases
de la clase y nadie más pueden acceder a las
variables y métodos.
Private. Las variables y métodos de instancia
privados sólo pueden ser accedidos desde dentro
de la clase.
Ejemplo herencia
public class Articulo { // clase padre
public float precio=0;
...
public void setPrecio(float elPrecio) {
precio = elPrecio;
}
...
public float getPrecio() {
return precio;
}
}
//los métodos y atributos de
Articulo son heredados a Pelicula
public class Pelicula extends Articulo {// clase hijo
public void setDescripcion(String descrip) {
descripcion = descrip;
}
...
public String getDescripcion() {
return descripcion;
}
}

Más contenido relacionado

La actualidad más candente

Ejercicios de evaluación de fundametnos de programacion en JAva
Ejercicios de evaluación de fundametnos de programacion en JAvaEjercicios de evaluación de fundametnos de programacion en JAva
Ejercicios de evaluación de fundametnos de programacion en JAvaMartha Beatriz Coronado Rosales
 
Curso Java Inicial 2 - Introducción y Sintaxis
Curso Java Inicial  2 - Introducción y SintaxisCurso Java Inicial  2 - Introducción y Sintaxis
Curso Java Inicial 2 - Introducción y SintaxisEmilio Aviles Avila
 
Curso Java Inicial 7 Excepciones
Curso Java Inicial   7 ExcepcionesCurso Java Inicial   7 Excepciones
Curso Java Inicial 7 ExcepcionesEmilio Aviles Avila
 
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...Eudris Cabrera
 
Ejercicios de test - desarrollo y programación
Ejercicios de test  -  desarrollo y programaciónEjercicios de test  -  desarrollo y programación
Ejercicios de test - desarrollo y programaciónoposicionestic
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVAjesanchez5
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Javaricardomore94
 
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...Eudris Cabrera
 
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...David Zapateria Besteiro
 

La actualidad más candente (20)

Intro Java
Intro JavaIntro Java
Intro Java
 
Ejercicios de evaluación de fundametnos de programacion en JAva
Ejercicios de evaluación de fundametnos de programacion en JAvaEjercicios de evaluación de fundametnos de programacion en JAva
Ejercicios de evaluación de fundametnos de programacion en JAva
 
Curso Java Inicial 2 - Introducción y Sintaxis
Curso Java Inicial  2 - Introducción y SintaxisCurso Java Inicial  2 - Introducción y Sintaxis
Curso Java Inicial 2 - Introducción y Sintaxis
 
Programación con java en Eclipse
Programación con java en EclipseProgramación con java en Eclipse
Programación con java en Eclipse
 
Unidad i poo
Unidad i pooUnidad i poo
Unidad i poo
 
Curso Java Inicial 7 Excepciones
Curso Java Inicial   7 ExcepcionesCurso Java Inicial   7 Excepciones
Curso Java Inicial 7 Excepciones
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
Sintaxis Java
Sintaxis JavaSintaxis Java
Sintaxis Java
 
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
 
Calse 3 JAVA 2012
Calse 3 JAVA 2012Calse 3 JAVA 2012
Calse 3 JAVA 2012
 
Ejercicios de test - desarrollo y programación
Ejercicios de test  -  desarrollo y programaciónEjercicios de test  -  desarrollo y programación
Ejercicios de test - desarrollo y programación
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVA
 
Portafolio de evidencias
Portafolio de evidenciasPortafolio de evidencias
Portafolio de evidencias
 
Java12
Java12Java12
Java12
 
Portafolio de evidencias
Portafolio de evidenciasPortafolio de evidencias
Portafolio de evidencias
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Java
 
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
 

Similar a Estructura basica de un programa

Java Ago Dic07
Java Ago Dic07Java Ago Dic07
Java Ago Dic07adrianpro
 
Lenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosLenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosDoris Aguagallo
 
Información básica Java
Información básica JavaInformación básica Java
Información básica JavaFordBull2er
 
Java fundamentos -15 consejos practicos open saturday 2018
Java fundamentos -15 consejos practicos open saturday 2018Java fundamentos -15 consejos practicos open saturday 2018
Java fundamentos -15 consejos practicos open saturday 2018Eudris Cabrera
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma JavaEudris Cabrera
 
Java Sobrecarga y Recursividad
Java Sobrecarga y RecursividadJava Sobrecarga y Recursividad
Java Sobrecarga y Recursividadpbcanessa
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica iirolmanpaul
 
Trabajo java
Trabajo javaTrabajo java
Trabajo javaamec0612
 
Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006Samuel Marrero
 
Java1-Intro.pptbbjjjfdzvñutfdnmj habitación
Java1-Intro.pptbbjjjfdzvñutfdnmj habitaciónJava1-Intro.pptbbjjjfdzvñutfdnmj habitación
Java1-Intro.pptbbjjjfdzvñutfdnmj habitaciónFabiolaCastilloCanci
 
Java introduccion conceptos basicos una mira
Java introduccion conceptos basicos una miraJava introduccion conceptos basicos una mira
Java introduccion conceptos basicos una miraArisbethBernalSalina
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02Krizztiina Pacheko
 

Similar a Estructura basica de un programa (20)

r124736.PPT
r124736.PPTr124736.PPT
r124736.PPT
 
Java Ago Dic07
Java Ago Dic07Java Ago Dic07
Java Ago Dic07
 
Grupo1
Grupo1Grupo1
Grupo1
 
Fondo1 (2)
Fondo1 (2)Fondo1 (2)
Fondo1 (2)
 
Lenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosLenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetos
 
Semana9 Vbr
Semana9 VbrSemana9 Vbr
Semana9 Vbr
 
Información básica Java
Información básica JavaInformación básica Java
Información básica Java
 
Java fundamentos -15 consejos practicos open saturday 2018
Java fundamentos -15 consejos practicos open saturday 2018Java fundamentos -15 consejos practicos open saturday 2018
Java fundamentos -15 consejos practicos open saturday 2018
 
Java de erlin
Java de erlinJava de erlin
Java de erlin
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java
 
Java Sobrecarga y Recursividad
Java Sobrecarga y RecursividadJava Sobrecarga y Recursividad
Java Sobrecarga y Recursividad
 
Unidad 2. Lenguaje orientado a objetos
Unidad 2. Lenguaje orientado a objetosUnidad 2. Lenguaje orientado a objetos
Unidad 2. Lenguaje orientado a objetos
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica ii
 
Trabajo java
Trabajo javaTrabajo java
Trabajo java
 
Java
JavaJava
Java
 
Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 
Java1-Intro.pptbbjjjfdzvñutfdnmj habitación
Java1-Intro.pptbbjjjfdzvñutfdnmj habitaciónJava1-Intro.pptbbjjjfdzvñutfdnmj habitación
Java1-Intro.pptbbjjjfdzvñutfdnmj habitación
 
Java introduccion conceptos basicos una mira
Java introduccion conceptos basicos una miraJava introduccion conceptos basicos una mira
Java introduccion conceptos basicos una mira
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02
 

Último

SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.ariannytrading
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
TALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaTALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaSantiagoSanchez353883
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...SuannNeyraChongShing
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfrolandolazartep
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENSLuisLobatoingaruca
 
SSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTSSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTGestorManpower
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IILauraFernandaValdovi
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 

Último (20)

SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
TALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaTALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación pública
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdf
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
 
SSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTSSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SST
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo II
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 

Estructura basica de un programa

  • 1. Java – Modulo 1 Introducción y Fundamentos del lenguaje de programación Java
  • 2. Contenido · Características del lenguaje. · Breve historia (origen y versiones). · Variables y Tipos de Datos. · Estructuras de Decisión. · Ciclos iterativos. · Datos estructurados (vs. Clases). · Introducción a la POO. · Uso básico de la herramienta de desarrollo.
  • 3. Breve Historia Java fue diseñado en 1990 por James Gosling, de Sun Microsystems  Fue diseñado antes de que diese comienzo la era World Wide Web.  Software para dispositivos electrónicos: calculadoras, microondas y la televisión interactiva. Lenguaje que independiente de la plataforma
  • 4. Breve Historia El objetivo fue crear un nuevo lenguaje de programación lo más sencillo posible, con el objeto de que se pudiese adaptar con facilidad a cualquier entorno de ejecución. Se conjuntaron las características esenciales que debía tener un lenguaje de programación moderno y potente.
  • 5. ¿Por qué Java? Portabilidad: tanto del código fuente como del “bytecode”. Más soporte en el lenguaje. Una amplia librería de Clases. Manejo de Errores. No usa apuntadores. (garbage collection) El manejo de threads es parte del lenguaje. Carga dinámica del las clases y una “caja” segura para le ejecución de código remoto.
  • 6. ¿Qué es Java? “ Es un lenguaje simple, orientado a Objetos, Distribuido, interpretado, robusto, seguro, de arquitectura neutral, portable, de alto rendimiento, multihilos, y dinámico” - Sun
  • 7. ¿Qué es Java? Un lenguaje de Programación  Definido por Gosling, Joy y Steele en la especificación del lenguaje Java. Una plataforma  Una definición de una máquina virtual (JVM).  Ambientes de ejecución para diferentes “hardwares”. Una librería de clases  Un conjunto estándar de APIs () : GUI, almacenamiento de datos, E/S, redes, etc.
  • 8. Características Simple Seguro Portable Orientado a Objetos Robusto Multihilos De Arquitectura neutral Interpretado Alto Rendimiento Distribuido Dinámico
  • 9. Caracteristicas (cont...) Simple  Fácil de aprender, sintaxis de C/C++, versión simplificada de C++. Seguro  Los applets pueden ejecutarse sin temor a virus o a la violación de acceso a información privada. Portable  Generación de código intermedio: Bytecode
  • 10. Caracteristicas (cont...) Robusto  Localización temprana de errores  Minimización de errores comunes de programación.  Verificaciones a tiempo de compilación y ejecución.  Fuertemente tipado. Multihilos  Permite hacer programas que realicen varias cosas al mismo tiempo. Facilita la creación de sistemas interactivos. De Arquitectura neutral
  • 11. La máquina Virtual Java (JVM) Puede verse como una computadora abstracta que es definida por una especificación. Es una máquina imaginaria que se implementa por software . Podemos estar hablando de:  La especificación abstracta.  Una implementación concreta  Una instancia de tiempo de ejecución Sun publicó las especificaciones para la JVM para asegurar la portabilidad de las aplicaciones.
  • 12. La máquina Virtual Java Cada aplicación Java se ejecuta dentro de una instancia de tiempo de aplicación de alguna implementación concreta para la especificación abstracta.
  • 13. La máquina Virtual Java Código fuenteCódigo fuente Compilador JavaCompilador Java Byte-codesByte-codes Win32 JVMWin32 JVM Código máquina Win32 Código máquina Win32 Macintosh JVMMacintosh JVM UNIX JVMUNIX JVM Código máquina Macintosh Código máquina Macintosh Código máquina UNIX Código máquina UNIX
  • 14. Ivette C. Martínez - Héctor Palacios El API de Java Es una colección de “partes” de software que brindan al usuario “utilidades”. Ejm: GUI. Está formado por librerías o paquetes relacionados.
  • 15. Compilación y ejecución HelloWorld.java javac HelloWorld.java java HelloWorld HelloWorld.class compilar correr bytecode Codigo fuente
  • 16. Elementos del lenguaje Declaraciones Tipos de Datos Operadores Estructuras de control Clases y Objetos Paquetes
  • 17. Declaraciones Declaración de Variables  <tipo> <variable>;  <tipo> <var1>, <var2>, ..., <varn>;  <tipo> <var1> = <valor>; Ejemplos  int x,y,z;  int x = 9;  boolean terminar = false;  Cliente = new Cliente();
  • 18. Asignaciones Asignaciones  <tipo> <variable> = <valor>;  <tipo> <variable>; <otras instrucciones>... <variable> = <valor>; Ejemplo  int x = 4; //Declaracion con asignación  x = 9; //Se asume que x está definida  c1 = new Cliente(); //Se asume que Cliente //y c1 están definidos
  • 19. Tipos de Datos Tipos primitivos:  boolean true o false  char unicode! (16 bits)  byte entero de 8 bits con signo.  short entero de 16 bits con signo.  int entero de 32 bits con signo.  long entero de 64 bits con signo.  float,double IEEE 754 floating point No es un int
  • 20. Otros tipos de datos. Tipos compuestos  Clases  Arreglos Los strings son soportados mediante una clase built-in class denominada String.
  • 21. Conversiones de tipos Conversión entre los tipos enteros y punto flotante.  Incluye char No hay conversión automatica con el tipo boolean! Las conversiones se pueden forzar mediante una operación de casting – con la misma sintaxis de C/C++. int i = (int) 1.345;
  • 22. Operadores Asignación: =, +=, -=, *=, … Numéricos: +, -, *, /, %, ++, --, … Relacionales: ==. !=, <, >, <=, >=, … Booleanos: &&, ||, ! De Bits: &, |, ^, ~, <<, >>, …
  • 23. Comentarios // comentario Los caracteres desde // hasta el final de la línea son ignorados. /* comentario */ Los caracteres entre /* y */ son ignorados /** comentario */ Los caracteres entre /** y */son ignorados y se incluyen en la generación autómatica de la documentación.
  • 24. Identificadores Nombre dado a una variable, un método o una clase. Comienzan con una letra Unicode (incluyendo _ and $) y seguido de letras y digitos. Pueden ser de cualquier longitud. Ejemplos:  Apellido  Hora  $PorMenos
  • 25. Paquetes Se usan para encapsular los datos de manera automática. Los paquetes de clases se cargan con la palabra clave import. Ejemplo: import java.Date; import java.awt.*; import miPaquete.miClase;
  • 26. Tipos de Clases en Java abstract. Una clase abstracta no se instancia, sino que se utiliza como clase base para la herencia. final. Una clase final se declara como la clase que termina una cadena de herencia. public. Las clases public son accesibles desde otras clases, bien sea directamente o por herencia. Para acceder desde otros paquetes, primero tienen que ser importadas.
  • 27. Niveles de acceso a métodos y atributos public. Cualquier clase desde cualquier lugar puede acceder a las variables y métodos. protected o friendly. Sólo las subclases de la clase y nadie más pueden acceder a las variables y métodos. Private. Las variables y métodos de instancia privados sólo pueden ser accedidos desde dentro de la clase.
  • 28. Ejemplo herencia public class Articulo { // clase padre public float precio=0; ... public void setPrecio(float elPrecio) { precio = elPrecio; } ... public float getPrecio() { return precio; } } //los métodos y atributos de Articulo son heredados a Pelicula public class Pelicula extends Articulo {// clase hijo public void setDescripcion(String descrip) { descripcion = descrip; } ... public String getDescripcion() { return descripcion; } }