SlideShare una empresa de Scribd logo
1 de 41
JAVA
Índice
●
Introducció n a Java
●
Java básico
●
Objetos con Java
●
Conceptos avanzados
Características
●
Simple
●
Orientado a objetos
●
Distribuido
●
Robusto
●
Seguro
●
Independiente de la plataforma
●
Multihilo nativo
Orientado a objetos
●
Paradigma de programació n que
basado en modelar el sistema como
clases e instancias de las clases
●
Evolució n del modelo imperativo
Comentarios
●
Comentario de una línea: //
– int usu = 0; // el número de usuarios
●
Comentario de bloque: /* .... */
– /* Esto no se tendrá
en cuenta */
●
Comentario javadoc: /** .... */
– Para comentar el có digo
Comentarios
La definición de la clase
●
En Java, todo son clases
●
Así que cada fichero define una clase
– public class MiClase
●
La clase tiene atributos y métodos
●
El método main es especial
– public static void main(String[] args) {...}
– Es el punto de arranque de una clase
Tipos de datos primitivos
●
Enteros (se inicializan a 0)
– byte: un byte con signo ((byte)12)
– short: dos bytes con signo ((short)1231)
– int: cuatros bytes con signo (1238921)
– long: ocho bytes con signo (728478283L)
●
Reales (se inicializan a 0.0)
– float: punto flotante 32 bits (1.2342F)
– double: punto flotante 64 bits (123.131)
Tipos de datos primitivos
●
Booleanos (se inicializa a false)
– true / false
●
Carácter (se inicializa al carácter nulo)
– 'S', 'a'
●
El tamañ o de datos estádefinido y es
independiente de la plataforma
TipoDatos
Tipos de datos referencia
●
Objetos
– Instancias de clases
●
Arrays
– Colecció n de elementos del mismo tipo,
sean básicos o complejos
●
Se inicializan a null
Inicialización
●
Las variables pueden inicializarse en la
definició n
int a = 2;
char b = 'a';
double c = 123.13123;
Bicicleta d = new Bicicleta();
Constantes
●
Variables que no pueden cambiar de
valor una vez establecido
●
Modificador final
final int a;
a = 12;
final double b = 456.4546456;
Constantes
Operadores aritméticos
●
Binarios
– Suma: op1 + op2
– Resta: op1 – op2
– Multiplicacion: op1 * op2
– Divisió n: op1 / op2
– Mó dulo: op1 % op2
OperadoresAritmetico
Operadores aritméticos
●
Suma / resta unaria
– ++op1
– op1++
– --op1
– op1--
Operadores de comparación
●
Devuelven booleanos
– Igualdad: op1 == op2
– Desigualdad: op1 != op2
– Mayor que: op1 > op2
– Mayor o igual que: op1 >= op2
– Menor que: op1 < op2
– Menor o igual que: op1 <= op2
OperadoresComparacio
Operadores de comparación
●
Mucho cuidado con la igualdad
●
Cuando se comparan variables
referencia, se compara si ambos
objetos son el mismo, no si son iguales
(tienen el mismo estado)
OperadoresComparacio
Operadores booleanos
●
Operan sobre booleanos y devuelven
booleanos
– AND: op1 && op2
– OR: op1 || op2
– NOT: !op1
Operadores booleanos
●
Java só lo evalúa si es necesario
●
Si el primer operando de un AND es
false, no evalúa el segundo y devuelve
false
– Lo mismo con OR
●
Para obligar a evaluar el segundo
operando, usar & (AND) y | (OR)
OperadoresBooleano
Otros operadores
●
?: (if-then-else)
if (a == b) then c else d;
a == b ? c : d
●
[] - indexació n de arrays
●
. (punto): acceso a métodos y variables
●
(): para especificar los argumentos a
métodos
Orden de evaluación
●
Se pueden emplear paréntesis para
especificar el orden de evaluació n
– ((a + b) – c) * 4
●
Existen las reglas de precedencia
– * y / más precedencia que + y -
●
Pero es mejor despejar la ambigüedad
mediante el uso de paréntesis
– a + b – (c * 4)
Condicionales
●
Permiten ejecutar ciertas sentencias
dependiendo de una condició n
●
If / else / else if
●
Switch / case
●
?:
Condicionales
If / else / else if
●
Só lo ejecuta el cuerpo si la condició n
es cierta
●
La condició n debe ser booleana
if (condición) {
cuerpo
}
If / else / else if
●
Es posible especificar qué hacer si la
condició n no se cumple mediante el
else
if (condición) {
cuerpo1
}
else {
cuerpo2
}
If / else / else if
●
Se pueden encadenar varios
condicionales
●
Aunque más de una condició n sea
cierta, só lo se ejecuta el cuerpo de la
condició n que aparece la primera
●
Si no se verifica ninguna condició n, se
ejecuta el else final
If / else / else if
if (condición1) {
cuerpo1
}
else if (condición2){
cuerpo2
}
else if (condición3) {
cuerpo3
}
else {
cuerpo4
}
switch
●
Modo compacto de los if else anidados
●
Só lo permite condiciones de igualdad
– Si la condició n es igual a 'a', se ejecuta
cuerpo 1
– Si ninguna se verifica
se ejecuta 'default' switch (condición) {
case a: cuerpo1
case b: cuerpo2
default: cuerpo3
}
Bucles
●
Permiten ejecutar repetidamente un
conjunto de sentencias (cuerpo)
mientras la condició n de bucle se
cumpla
●
Tres tipos
– while
– do while
– for
while
●
while: ejecuta el cuerpo del bucle
mientras la condició n sea cierta
●
La condició n se evalúa antes de la
iteració n
while (condición) {
cuerpo
}
do while
●
do while: ejecuta el cuerpo del bucle
mientras la condició n sea cierta
●
La condició n se evalúa al final de la
iteració n, con lo que siempre se ejecuta
al menos una vez
do{
cuerpo
} while (condición)
for
for (inicialización; condición; incremento) {
cuerpo
}
●
Cualquiera de los tres puede ser vacío
inicialización
while (condición) {
cuerpo
incremento
}
Break
●
Rompe la ejecució n de un bucle y
devuelve el control al exterior
●
Puede proporcionarse una etiqueta y
salir de bucles anidados
while (condición) {
....
break;
}
externo: while (condición) {
while (condición2) {
break externo;
}}
Return
●
Termina la ejecució n del método y sale
de él
●
Si el método tienen que devolver un
valor, debe especificarse en la
sentencia return (return a)
●
Si no se especifica, al final del método
hay un return implícito
Método main
●
Es un método especial
●
Punto de entrada del programa
●
public static void main(String args[])
●
args: vector de cadenas de texto que
representa los parámetros pasados al
programa
Main
OBJETOS CON JAVA
●
Estado y comportamiento
●
Clases, atributos y métodos
●
Herencia, this y super
●
Interfaces
●
Paquetes
●
Sobrecarga
OBJETOS CON JAVA
●
Constructores y destructores
●
Seguridad
●
Casting y comparació n
●
Arrays y vectores
●
Strings y cadenas de texto
Introducción
●
Modelar los programas como
interacció n entre objetos
●
Los objetos se describen mediante
clases
●
Las clases se instancian para crear un
nuevo objeto
Objetos
●
Ejemplos a nuestro alrededor
– Hojas, bolígrafos, el profesor, etc...
●
Dos características
– Tienen un estado
– Tienen un comportamiento
●
Un objeto es un conjunto software de
variables y los métodos asociados
Estado
●
El estado se guarda en una o más
variables
●
Una variable es un espacio de
almacenamiento con un tipo de datos
asociado que se identifica mediante un
nombre
Comportamiento
●
El comportamiento se implementa
mediante métodos
●
Los métodos son trozos de có digo
(subrutinas) asociados con el objeto
Encapsulación
●
Podemos ver los objetos java como
unas variables que guardan el estado y
unos métodos que lo cambian
●
El acceso a las variables y métodos está
regulado por los calificadores de acceso
Clase
●
Una clase es una plantilla, o prototipo,
que define las variables y los métodos
comunes a todos los objetos de cierto
tipo
Instanciación
●
Cuando una clase se instancia, se crea
un nuevo objeto en el sistema
●
Se crea una copia de todas las
variables de instancia para almacenar el
estado de este objeto

Más contenido relacionado

La actualidad más candente

Programación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoProgramación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoAngel Vázquez Patiño
 
Seccion Fundamentos SCJP
Seccion Fundamentos SCJPSeccion Fundamentos SCJP
Seccion Fundamentos SCJPjcherrera
 
Variables y metodos de instancia
Variables y metodos de instanciaVariables y metodos de instancia
Variables y metodos de instanciaRobert Wolf
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetosBelenMonse
 
01-declaracion-de-variables
01-declaracion-de-variables01-declaracion-de-variables
01-declaracion-de-variablesUAL
 
Sintaxis Básica del lenguaje Java
Sintaxis Básica del lenguaje JavaSintaxis Básica del lenguaje Java
Sintaxis Básica del lenguaje JavaRay
 
Java 8 introducción a expresiones lambdas y api stream
Java 8  introducción a expresiones lambdas y api streamJava 8  introducción a expresiones lambdas y api stream
Java 8 introducción a expresiones lambdas y api streamEudris Cabrera
 
Instrucciones basicas para_c_
Instrucciones basicas para_c_Instrucciones basicas para_c_
Instrucciones basicas para_c_Diego Arturo
 
Tema 10 clase abstractas e interfaz
Tema 10 clase abstractas e interfazTema 10 clase abstractas e interfaz
Tema 10 clase abstractas e interfazRobert Wolf
 
02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcional02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcionalJuan Rodríguez
 

La actualidad más candente (20)

Actividad N° 7 - Unidad 4
Actividad N° 7 - Unidad 4 Actividad N° 7 - Unidad 4
Actividad N° 7 - Unidad 4
 
Programación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoProgramación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismo
 
Seccion Fundamentos SCJP
Seccion Fundamentos SCJPSeccion Fundamentos SCJP
Seccion Fundamentos SCJP
 
Variables y metodos de instancia
Variables y metodos de instanciaVariables y metodos de instancia
Variables y metodos de instancia
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetos
 
Curso Java - Programación Digital
Curso Java - Programación DigitalCurso Java - Programación Digital
Curso Java - Programación Digital
 
Java 5 se (presentación3)
Java 5 se (presentación3)Java 5 se (presentación3)
Java 5 se (presentación3)
 
01-declaracion-de-variables
01-declaracion-de-variables01-declaracion-de-variables
01-declaracion-de-variables
 
MéTodos En Java
MéTodos En JavaMéTodos En Java
MéTodos En Java
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
Programación Orientada a Objetos para Python
Programación Orientada a Objetos para PythonProgramación Orientada a Objetos para Python
Programación Orientada a Objetos para Python
 
Datos Previos
Datos PreviosDatos Previos
Datos Previos
 
Sintaxis Básica del lenguaje Java
Sintaxis Básica del lenguaje JavaSintaxis Básica del lenguaje Java
Sintaxis Básica del lenguaje Java
 
Datos Previos
Datos PreviosDatos Previos
Datos Previos
 
Metodos 2
Metodos 2Metodos 2
Metodos 2
 
Java 8 introducción a expresiones lambdas y api stream
Java 8  introducción a expresiones lambdas y api streamJava 8  introducción a expresiones lambdas y api stream
Java 8 introducción a expresiones lambdas y api stream
 
Clase v
Clase vClase v
Clase v
 
Instrucciones basicas para_c_
Instrucciones basicas para_c_Instrucciones basicas para_c_
Instrucciones basicas para_c_
 
Tema 10 clase abstractas e interfaz
Tema 10 clase abstractas e interfazTema 10 clase abstractas e interfaz
Tema 10 clase abstractas e interfaz
 
02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcional02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcional
 

Similar a Java

métodos procedimimientos estructuras de control java
métodos procedimimientos estructuras de control javamétodos procedimimientos estructuras de control java
métodos procedimimientos estructuras de control javaHenry Upla
 
Clase n°2 3-4 java
Clase n°2 3-4 javaClase n°2 3-4 java
Clase n°2 3-4 javajbersosa
 
Taller de Unit Testing y TDD en Java: Parte 1
Taller de Unit Testing y TDD en Java: Parte 1Taller de Unit Testing y TDD en Java: Parte 1
Taller de Unit Testing y TDD en Java: Parte 1Jano González
 
JavaScript para Programadores Java
JavaScript para Programadores JavaJavaScript para Programadores Java
JavaScript para Programadores JavaCarlos A. Iglesias
 
Scala: un vistazo general
Scala: un vistazo generalScala: un vistazo general
Scala: un vistazo generalMiguel Pastor
 
Introduccion Java
Introduccion JavaIntroduccion Java
Introduccion Javasvhurtado
 
Sesión 1_ FUNDAMENTOS DE PROGRAMACIÓN EN JAVASCRIPT.pptx
Sesión 1_ FUNDAMENTOS DE PROGRAMACIÓN EN JAVASCRIPT.pptxSesión 1_ FUNDAMENTOS DE PROGRAMACIÓN EN JAVASCRIPT.pptx
Sesión 1_ FUNDAMENTOS DE PROGRAMACIÓN EN JAVASCRIPT.pptxpame888173
 
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...Diego Andrés Alvarez Marín
 
Taller de Pascal 01.pptx
Taller de Pascal 01.pptxTaller de Pascal 01.pptx
Taller de Pascal 01.pptxMatiasEscobar24
 
Workshop iOS 4: Closures, generics & operators
Workshop iOS 4: Closures, generics & operatorsWorkshop iOS 4: Closures, generics & operators
Workshop iOS 4: Closures, generics & operatorsVisual Engineering
 
Sentencia if else
Sentencia if elseSentencia if else
Sentencia if elseUVM
 
Tema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadTema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadCarlos A. Iglesias
 
6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos ProgramasPaulo Guerra Terán
 
Java8 : Más allá de las Expresiones Lambdas
Java8 :  Más allá de las Expresiones LambdasJava8 :  Más allá de las Expresiones Lambdas
Java8 : Más allá de las Expresiones LambdasEudris Cabrera
 

Similar a Java (20)

Clase iv
Clase ivClase iv
Clase iv
 
métodos procedimimientos estructuras de control java
métodos procedimimientos estructuras de control javamétodos procedimimientos estructuras de control java
métodos procedimimientos estructuras de control java
 
Clase n°2 3-4 java
Clase n°2 3-4 javaClase n°2 3-4 java
Clase n°2 3-4 java
 
Taller de Unit Testing y TDD en Java: Parte 1
Taller de Unit Testing y TDD en Java: Parte 1Taller de Unit Testing y TDD en Java: Parte 1
Taller de Unit Testing y TDD en Java: Parte 1
 
JavaScript para Programadores Java
JavaScript para Programadores JavaJavaScript para Programadores Java
JavaScript para Programadores Java
 
Semana9b Vbr
Semana9b VbrSemana9b Vbr
Semana9b Vbr
 
Python
Python Python
Python
 
Resumen java
Resumen javaResumen java
Resumen java
 
Scala: un vistazo general
Scala: un vistazo generalScala: un vistazo general
Scala: un vistazo general
 
Introduccion Java
Introduccion JavaIntroduccion Java
Introduccion Java
 
Principios de diseño
Principios de diseñoPrincipios de diseño
Principios de diseño
 
Sesión 1_ FUNDAMENTOS DE PROGRAMACIÓN EN JAVASCRIPT.pptx
Sesión 1_ FUNDAMENTOS DE PROGRAMACIÓN EN JAVASCRIPT.pptxSesión 1_ FUNDAMENTOS DE PROGRAMACIÓN EN JAVASCRIPT.pptx
Sesión 1_ FUNDAMENTOS DE PROGRAMACIÓN EN JAVASCRIPT.pptx
 
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
 
Taller de Pascal 01.pptx
Taller de Pascal 01.pptxTaller de Pascal 01.pptx
Taller de Pascal 01.pptx
 
Workshop iOS 4: Closures, generics & operators
Workshop iOS 4: Closures, generics & operatorsWorkshop iOS 4: Closures, generics & operators
Workshop iOS 4: Closures, generics & operators
 
Sentencia if else
Sentencia if elseSentencia if else
Sentencia if else
 
Tema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadTema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidad
 
6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas
 
Java8 : Más allá de las Expresiones Lambdas
Java8 :  Más allá de las Expresiones LambdasJava8 :  Más allá de las Expresiones Lambdas
Java8 : Más allá de las Expresiones Lambdas
 
Resilient Distributed Dataset - Analisis paper
Resilient  Distributed Dataset - Analisis paper Resilient  Distributed Dataset - Analisis paper
Resilient Distributed Dataset - Analisis paper
 

Más de hilda2000

Presentacion ensamblaje-de-una-pc
Presentacion ensamblaje-de-una-pcPresentacion ensamblaje-de-una-pc
Presentacion ensamblaje-de-una-pchilda2000
 
Viñetas y cuadro de texto
Viñetas y cuadro de textoViñetas y cuadro de texto
Viñetas y cuadro de textohilda2000
 
Las TIC y la Formación Docente
Las TIC y la Formación DocenteLas TIC y la Formación Docente
Las TIC y la Formación Docentehilda2000
 
Las TIC y la Formación Docente
Las TIC y la Formación DocenteLas TIC y la Formación Docente
Las TIC y la Formación Docentehilda2000
 

Más de hilda2000 (6)

Power point
Power pointPower point
Power point
 
Presentacion ensamblaje-de-una-pc
Presentacion ensamblaje-de-una-pcPresentacion ensamblaje-de-una-pc
Presentacion ensamblaje-de-una-pc
 
Viñetas y cuadro de texto
Viñetas y cuadro de textoViñetas y cuadro de texto
Viñetas y cuadro de texto
 
Las tic
Las ticLas tic
Las tic
 
Las TIC y la Formación Docente
Las TIC y la Formación DocenteLas TIC y la Formación Docente
Las TIC y la Formación Docente
 
Las TIC y la Formación Docente
Las TIC y la Formación DocenteLas TIC y la Formación Docente
Las TIC y la Formación Docente
 

Java

  • 2. Índice ● Introducció n a Java ● Java básico ● Objetos con Java ● Conceptos avanzados
  • 4. Orientado a objetos ● Paradigma de programació n que basado en modelar el sistema como clases e instancias de las clases ● Evolució n del modelo imperativo
  • 5. Comentarios ● Comentario de una línea: // – int usu = 0; // el número de usuarios ● Comentario de bloque: /* .... */ – /* Esto no se tendrá en cuenta */ ● Comentario javadoc: /** .... */ – Para comentar el có digo Comentarios
  • 6. La definición de la clase ● En Java, todo son clases ● Así que cada fichero define una clase – public class MiClase ● La clase tiene atributos y métodos ● El método main es especial – public static void main(String[] args) {...} – Es el punto de arranque de una clase
  • 7. Tipos de datos primitivos ● Enteros (se inicializan a 0) – byte: un byte con signo ((byte)12) – short: dos bytes con signo ((short)1231) – int: cuatros bytes con signo (1238921) – long: ocho bytes con signo (728478283L) ● Reales (se inicializan a 0.0) – float: punto flotante 32 bits (1.2342F) – double: punto flotante 64 bits (123.131)
  • 8. Tipos de datos primitivos ● Booleanos (se inicializa a false) – true / false ● Carácter (se inicializa al carácter nulo) – 'S', 'a' ● El tamañ o de datos estádefinido y es independiente de la plataforma TipoDatos
  • 9. Tipos de datos referencia ● Objetos – Instancias de clases ● Arrays – Colecció n de elementos del mismo tipo, sean básicos o complejos ● Se inicializan a null
  • 10. Inicialización ● Las variables pueden inicializarse en la definició n int a = 2; char b = 'a'; double c = 123.13123; Bicicleta d = new Bicicleta();
  • 11. Constantes ● Variables que no pueden cambiar de valor una vez establecido ● Modificador final final int a; a = 12; final double b = 456.4546456; Constantes
  • 12. Operadores aritméticos ● Binarios – Suma: op1 + op2 – Resta: op1 – op2 – Multiplicacion: op1 * op2 – Divisió n: op1 / op2 – Mó dulo: op1 % op2 OperadoresAritmetico
  • 13. Operadores aritméticos ● Suma / resta unaria – ++op1 – op1++ – --op1 – op1--
  • 14. Operadores de comparación ● Devuelven booleanos – Igualdad: op1 == op2 – Desigualdad: op1 != op2 – Mayor que: op1 > op2 – Mayor o igual que: op1 >= op2 – Menor que: op1 < op2 – Menor o igual que: op1 <= op2 OperadoresComparacio
  • 15. Operadores de comparación ● Mucho cuidado con la igualdad ● Cuando se comparan variables referencia, se compara si ambos objetos son el mismo, no si son iguales (tienen el mismo estado) OperadoresComparacio
  • 16. Operadores booleanos ● Operan sobre booleanos y devuelven booleanos – AND: op1 && op2 – OR: op1 || op2 – NOT: !op1
  • 17. Operadores booleanos ● Java só lo evalúa si es necesario ● Si el primer operando de un AND es false, no evalúa el segundo y devuelve false – Lo mismo con OR ● Para obligar a evaluar el segundo operando, usar & (AND) y | (OR) OperadoresBooleano
  • 18. Otros operadores ● ?: (if-then-else) if (a == b) then c else d; a == b ? c : d ● [] - indexació n de arrays ● . (punto): acceso a métodos y variables ● (): para especificar los argumentos a métodos
  • 19. Orden de evaluación ● Se pueden emplear paréntesis para especificar el orden de evaluació n – ((a + b) – c) * 4 ● Existen las reglas de precedencia – * y / más precedencia que + y - ● Pero es mejor despejar la ambigüedad mediante el uso de paréntesis – a + b – (c * 4)
  • 20. Condicionales ● Permiten ejecutar ciertas sentencias dependiendo de una condició n ● If / else / else if ● Switch / case ● ?: Condicionales
  • 21. If / else / else if ● Só lo ejecuta el cuerpo si la condició n es cierta ● La condició n debe ser booleana if (condición) { cuerpo }
  • 22. If / else / else if ● Es posible especificar qué hacer si la condició n no se cumple mediante el else if (condición) { cuerpo1 } else { cuerpo2 }
  • 23. If / else / else if ● Se pueden encadenar varios condicionales ● Aunque más de una condició n sea cierta, só lo se ejecuta el cuerpo de la condició n que aparece la primera ● Si no se verifica ninguna condició n, se ejecuta el else final
  • 24. If / else / else if if (condición1) { cuerpo1 } else if (condición2){ cuerpo2 } else if (condición3) { cuerpo3 } else { cuerpo4 }
  • 25. switch ● Modo compacto de los if else anidados ● Só lo permite condiciones de igualdad – Si la condició n es igual a 'a', se ejecuta cuerpo 1 – Si ninguna se verifica se ejecuta 'default' switch (condición) { case a: cuerpo1 case b: cuerpo2 default: cuerpo3 }
  • 26. Bucles ● Permiten ejecutar repetidamente un conjunto de sentencias (cuerpo) mientras la condició n de bucle se cumpla ● Tres tipos – while – do while – for
  • 27. while ● while: ejecuta el cuerpo del bucle mientras la condició n sea cierta ● La condició n se evalúa antes de la iteració n while (condición) { cuerpo }
  • 28. do while ● do while: ejecuta el cuerpo del bucle mientras la condició n sea cierta ● La condició n se evalúa al final de la iteració n, con lo que siempre se ejecuta al menos una vez do{ cuerpo } while (condición)
  • 29. for for (inicialización; condición; incremento) { cuerpo } ● Cualquiera de los tres puede ser vacío inicialización while (condición) { cuerpo incremento }
  • 30. Break ● Rompe la ejecució n de un bucle y devuelve el control al exterior ● Puede proporcionarse una etiqueta y salir de bucles anidados while (condición) { .... break; } externo: while (condición) { while (condición2) { break externo; }}
  • 31. Return ● Termina la ejecució n del método y sale de él ● Si el método tienen que devolver un valor, debe especificarse en la sentencia return (return a) ● Si no se especifica, al final del método hay un return implícito
  • 32. Método main ● Es un método especial ● Punto de entrada del programa ● public static void main(String args[]) ● args: vector de cadenas de texto que representa los parámetros pasados al programa Main
  • 33. OBJETOS CON JAVA ● Estado y comportamiento ● Clases, atributos y métodos ● Herencia, this y super ● Interfaces ● Paquetes ● Sobrecarga
  • 34. OBJETOS CON JAVA ● Constructores y destructores ● Seguridad ● Casting y comparació n ● Arrays y vectores ● Strings y cadenas de texto
  • 35. Introducción ● Modelar los programas como interacció n entre objetos ● Los objetos se describen mediante clases ● Las clases se instancian para crear un nuevo objeto
  • 36. Objetos ● Ejemplos a nuestro alrededor – Hojas, bolígrafos, el profesor, etc... ● Dos características – Tienen un estado – Tienen un comportamiento ● Un objeto es un conjunto software de variables y los métodos asociados
  • 37. Estado ● El estado se guarda en una o más variables ● Una variable es un espacio de almacenamiento con un tipo de datos asociado que se identifica mediante un nombre
  • 38. Comportamiento ● El comportamiento se implementa mediante métodos ● Los métodos son trozos de có digo (subrutinas) asociados con el objeto
  • 39. Encapsulación ● Podemos ver los objetos java como unas variables que guardan el estado y unos métodos que lo cambian ● El acceso a las variables y métodos está regulado por los calificadores de acceso
  • 40. Clase ● Una clase es una plantilla, o prototipo, que define las variables y los métodos comunes a todos los objetos de cierto tipo
  • 41. Instanciación ● Cuando una clase se instancia, se crea un nuevo objeto en el sistema ● Se crea una copia de todas las variables de instancia para almacenar el estado de este objeto