SlideShare una empresa de Scribd logo
0.1 Java
Aspectos Básicos
Qué es Java?
● Java es un lenguaje de programación presentado en 1995, basado en clases
y orientado a objetos.
● Uno de los objetivos de Java es ser multiplataforma, “write once, run
everywhere”. El código puede ejecutar en cualquier plataforma con Java
compatible sin recompilar.
● En 2019 sigue siendo uno de los lenguajes de programación más usados.
● Muy usado en aplicaciones cliente-servidor en aplicaciones web.
● No es un lenguaje totalmente orientado a objeto, tiene también tipos
elementales.
Variables y Constantes
[<modificador>]* <tipo> <identificador> [,<identificador>];
int j;
int i, I, j101;
static char fin = ‘1’;
final boolean eureka = true;
En la declaración se establece el nombre, tipo alcance y se determina si la
variable es constante o no.
Tipos de Datos y Tipos de Elementales
Factorizar Propiedades. Todas las variables de un tipo comparten una misma
representación, toman valores de un mismo conjunto y pueden participar de las
mismas operaciones.
Efectuar Controles. El lenguaje establece restricciones que aseguran la
consistencia entre los operadores provistos y los operandos. Estas restricciones
van a ser controladas por el compilador o en ejecución.
Administrar la Memoria. El compilador decide cuánto espacio de
almacenamiento va a requerir cada dato en ejecución, de acuerdo a su tipo.
Tipos de Datos y Tipos de Elementales
fuente: https://en.wikibooks.org/wiki/Java_Programming/Primitive_Types
Expresiones
Operadores relacionales Operadores booleanos
Evaluación
Completa vs En cortocircuito
Conversión
byte → short → int → long → float →
double
igual ==
distinto !=
menor <
menor o
igual
<=
mayor >
mayor o
igual
>=
Conjunción &&
Disyunción ||
Negación !
Reglas de Precedencia y Asociatividad
++, --, !, - (unario), + (unario), type-cast
*, /, %
+, -
<, >, <=, >=
==, !=
&&
||
=, +=, -=, *=, /=, %=
Asignación
<ident> = <expresion>;
<tipo> <ident> = <exp> [, <ident> = <exp>];
boolean estado;
estado = true;
int a = 3, b = 4;
Cuando la expresión que aparece a la derecha de una asignación no coincide con el tipo de la variable
que está a la izquierda puede producirse una conversión automática o un error de compilación.
El error puede salvarse mediante una operación de casting.
Asignación
<ident> = <expresion>;
<tipo> <ident> = <exp> [, <ident> = <exp>];
boolean estado;
estado = true;
int a = 3, b = 4;
Cuando la expresión que aparece a la derecha de una asignación no coincide con el tipo de la variable
que está a la izquierda puede producirse una conversión automática o un error de compilación.
El error puede salvarse mediante una operación de casting.
Declaración
Asignación
Declaración y
Asignación
Conversión Automática de Tipos
Si al hacer la conversión de un tipo a otro se dan las 2 siguientes premisas:
● Los dos son tipos compatibles.
● El tipo de la variable destino es de un rango mayor al tipo de la variable que
se va a convertir.
Entonces, la conversión entre tipos es automática.
Conversión Automática de Tipos
Si al hacer la conversión de un tipo a otro se dan las 2 siguientes premisas:
● Los dos son tipos compatibles.
● El tipo de la variable destino es de un rango mayor al tipo de la variable que
se va a convertir.
Entonces, la conversión entre tipos es automática.
int a = 1;
long b = a;
Casting
Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir
entonces no es posible la conversión automática.
El programador se ve obligado a realizar una conversión explícita, que se
denomina casting.
La sintaxis es:
destino = (tipo_destino) valor;
Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos.
Casting
Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir
entonces no es posible la conversión automática.
El programador se ve obligado a realizar una conversión explícita, que se
denomina casting.
La sintaxis es:
destino = (tipo_destino) valor;
Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos.
int p = 37;
short j = (short) p;
Casting
Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir
entonces no es posible la conversión automática.
El programador se ve obligado a realizar una conversión explícita, que se
denomina casting.
La sintaxis es:
destino = (tipo_destino) valor;
Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos.
int p = 37; int a = 40000;
short j = (short) p; short j = (short) a;
j == -25536
Estructuras de Control en Java: Instrucciones
< instruccion > ::= < declaración de variable > |
< expresion > ; |
< bloque > |
< instruccion if > |
< instruccion while > |
< instruccion for > |
< instruccion switch > |
< instruccion try > |
< instruccion return > |
< break > | < continue > |
Estructuras de Control en Java: Bloques
< bloque> ::= { [< instruccion > ]* }
{
promedio = total / n ;
System.out.print("El promedio es ");
System.out.println(promedio); }
{
int temp;
temp = x;
x = y;
y = temp;
}
Estructuras de Control en Java: Bloques
Un bloque define un nuevo ambiente de referenciamiento.
Las variables declaradas dentro de un bloque son locales y no son visibles fuera
de él.
Un mismo nombre no puede ligarse a dos variables en el mismo bloque ni en
bloques anidados.
Una variable puede ser referenciada a partir de la instrucción que sigue a su
declaración.
Adoptaremos la convención de declarar las variables de un bloque al principio e
inicializarlas explícitamente.
Estructuras de Control en Java: Condicional (if)
< instruccion if > ::= if (< expresion booleana >)
< instruccion >
[else
< instrucción >]
Estructuras de Control en Java: Condicional (if)
if (x > y)
max = x;
else
max = y;
if (x>y){
max=x;
min = y;}
else{
max = y;
min = x;
}
if (x>y){
int temp;
temp = x;
x = y;
y = temp;
}
Estructuras de Control en Java: Condicional (if)
if (x > y) if (nota>9)
if (x > z) estado = ‘A’;
max = x; else if (nota>7)
else estado = ‘B’;
max = z; else if (nota >4)
else estado = ‘C’;
if (y > z) else if (nota < 4)
max = y; estado = ‘D’;
else
max = z;
Estructuras de Control en Java: Condicional (if)
estado = ́B ́; estado = ́B ́;
if (promedio > 7) if (promedio > 7){
if (inasistencias<3) if (inasistencias<3)
estado = ‘A’; estado = ‘A’; }
else else
estado = ‘C’; estado = ‘C’;
Estructuras de Control en Java: Condicional (if)
estado = ́B ́; estado = ́B ́;
if (promedio > 7){ if (promedio > 7){
if (inasistencias<3) if (inasistencias<3)
estado = ‘A’; estado = ‘A’; }
else else
estado = ‘C’; estado = ‘C’;
}
Estructuras de Control en Java: Condicional (switch)
<instruccion switch>::=
switch (<expression>) {
[ case <constante> : <instruccion> ]*
default: <instruccion>
}
Estructuras de Control en Java: Condicional (switch)
switch ( nota ) {
case 10:
case 9:
estado = ‘A’;
break;
case 8:
case 7:
estado = ‘B’;
break;
case 6:
case 5:
estado = ‘C’ ;
break;
default: estado = ́D ́; }
Estructuras de Control en Java: Iteración (while)
< instruccion while > ::=
while (<expresion booleana>)
<instrucción>
< instruccion do while> ::=
do
<instrucción>
while (<expresion booleana>)
Estructuras de Control en Java: Iteración (while)
int numero;
int digitos = 0;
System.out.println (“Ingrese el numero”);
numero = ES.leerEntero ();
while ( numero > 0 ) {
numero /=10;
digitos++;
}
System.out.println(digitos);
Estructuras de Control en Java: Iteración (while)
int numero;
int digitos = 0;
System.out.println (“Ingrese el numero”);
numero = ES.leerEntero ();
do {
numero /=10;
digitos++;
} while ( número > 0 );
System.out.println(digitos);
Estructuras de Control en Java: Iteración (for)
< instruccion for > ::=
for ([<asignacion>]; [<expresion>] ; [<expresion>])
<instrucción>
Estructuras de Control en Java: Iteración (for)
< instruccion for > ::=
for ([<asignacion>]; [<expresion>] ; [<expresion>])
<instrucción>
int n;
for ( n = 1 ; n <= 10 ; n++ )
System.out.println( n*n );
for ( int n = 1 ; n <= 10 ; n++ )
System.out.println( n*n );
Estructuras de Control en Java: Iteración (for)
sum = 0 ;
for ( n = 1 ; n <= 10 ; n++ )
sum = sum + n ;
for ( n = 1, sum = 0 ; n <= 10 ; n++ )
sum = sum + n ;
for (n=1,sum=0; n<=10; sum=sum+n,n++);
for ( n = 1, sum = 0 ; sum <= 100 ; n++ )
sum = sum + n ;
for ( int n = 1, sum = 0 ;sum <= 100 ; n++ )
sum = sum + n ;
Estructura de un programa en Java
La unidad básica de programación en Java es la clase.
Un programa en Java está constituido por una colección de clases .
La implementación de una clase consiste en definir sus miembros:
•Atributos: variables de instancia y de clase
•Servicios: constructores y métodos
Estructura de un programa en Java: Métodos
Sintaxis
[ < Modificador > ]* < Tipo del Resultado >
< Identificador > ( [< Parámetros Formales > ]* )
{ < bloque > }
Estructura de un programa en Java: Métodos
Sintaxis
[ < Modificador > ]* < Tipo del Resultado >
< Identificador > ( [< Parámetros Formales > ]* )
{ < bloque > }
public static void main(String [] args)
{ ... }
Estructura de un programa en Java: Métodos
Para que un programa en Java pueda ejecutarse es necesario definir una clase
que incluya un método llamado main().
class Hello {
public static void main(String [] args){
System.out.println(“Hello World”);
}
}
definición de una
clase
Definición de un
método.
Estructura de un programa en Java: Métodos
•La primera línea define una clase llamada Hello.
•La segunda clase define el método main, asociado a los modificadores public y
static. Es importante que no omitan ni alteren el encabezamiento del main.
•La palabra void indica que el método main no retorna ningún valor.
•La forma (String args[]) es la definición de los argumentos que recibe el
método main.
•La instrucción System.out.println muestra un literal en pantalla.
BlueJ
Procesador Número
ProcesadorNumero
sumaDigs ( n:entero ) : entero
estaDig ( n:entero, d:entero ) : booleano
Procesador Número
ProcesadorNumero
sumaDigs ( n:entero ) : entero
estaDig ( n:entero, d:entero ) : booleano
class ProcesadorNumero {
public static int sumaDig(int n ){
// Retorna la suma de los dígitos del número n
…
}
public static boolean estaDig (int n, int d ){
//Retorna true si y solo si d es un dígito del número n
…
}
}
Procesador Número
ProcesadorNumero
sumaDigs ( n:entero ) : entero
estaDig ( n:entero, d:entero ) : booleano
class ProcesadorNumero {
public static int sumaDig(int n ){
// Retorna la suma de los dígitos del número n
…
}
public static boolean estaDig (int n, int d ){
//Retorna true si y solo si d es un dígito del número n
…
}
}
Comentarios
de una sola
línea.
Modificadores
de visibilidad
Clases como unidad
de programación
Procesador Número
class ProcesadorNumero{
public static int sumaDig(int n){
//Retorna la suma de los dígitos del número n
int s=0;
while (n>0) {
s = s + n % 10;
n = n/10;
}
return s;
}
...
}
Procesador Número
class ProcesadorNumero{
public static int sumaDig(int n){
//Retorna la suma de los dígitos del número n
int s=0;
while (n>0) {
s = s + n % 10;
n = n/10;
}
return s;
}
...
}
Clases como unidad
de programación
Tipo Elemental
int
La instrucción
de return
Instrucción while
Asignaciones y expresiones,
operadores y operandos
Parámetros y
Variables
Locales
Procesador Número - Tester
Para que un programa en Java pueda ejecutarse es necesario que una clase
incluya un método llamado main().
class Tester{
public static void main (String args[]) {
int s = sumaDig(25036);
System.out.println(“La suma es “+s);
}
}
Procesador Número
public class ProcesadorNumero{
…
public static boolean estaDig(int n,int d ){
/* Retorna true si y solo si d
es un dígito del número n */
boolean esta = false;
while (n>0) && !esta {
if (d == n % 10)
esta = true;
n = n/10;
}
return esta;
}
}
Procesador Número
public class ProcesadorNumero{
…
public static boolean estaDig(int n,int d ){
/* Retorna true si y solo si d
es un dígito del número n */
boolean esta = false;
while (n>0) && !esta {
if (d == n % 10)
esta = true;
n = n/10;
}
return esta;
}
}
Operadores
relacionales y
lógicos.
Comentario
de múltiples
líneas.
Tipo
elemental
boolean
Condicional if
¿Preguntas?

Más contenido relacionado

PPT
Introduccion Java
PPT
PDF
PDF
Java apesteguia
PPTX
PDF
Semana 1 Estructuras de Control en Java
PPTX
Clase 1 y 2 teodoro wickel de la ciudad de angol
PPTX
Java básico
Introduccion Java
Java apesteguia
Semana 1 Estructuras de Control en Java
Clase 1 y 2 teodoro wickel de la ciudad de angol
Java básico

Similar a Presentacion sobre JAVA, elementos principales a comprender (20)

PPT
TUTORIAL JAVA
PDF
Resumen java
PPT
Estructuras Control Java. Fundamentos del Lenguaje
PDF
Unidad i antecedentes
PDF
Unidad i antecedentes1
PPS
Clase n°2 3-4 java
PPT
Tipos de datos
PDF
Conceptos estructuras de datos
PPT
JAVA.PPT
PPT
JAVA (1).PPT
PPT
JAVA (1).PPT
PPT
02_Sintaxis_de_Java.ppt
PPTX
Lenguaje de programacion java, conceptos
PPTX
JAVA_BASICO_modo_consola_introduccion.pptx
PPT
JAVA PARA PRINCIPIANTES2342342432231.PPT
PPTX
F.P.-G4_TRA2_24-2.pptxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
PPT
Introducción a la Programaciónen Java
PPT
Repaso de Java y Arreglos en herramuentas.ppt
PPS
Estructuras control java-
PPT
Java
TUTORIAL JAVA
Resumen java
Estructuras Control Java. Fundamentos del Lenguaje
Unidad i antecedentes
Unidad i antecedentes1
Clase n°2 3-4 java
Tipos de datos
Conceptos estructuras de datos
JAVA.PPT
JAVA (1).PPT
JAVA (1).PPT
02_Sintaxis_de_Java.ppt
Lenguaje de programacion java, conceptos
JAVA_BASICO_modo_consola_introduccion.pptx
JAVA PARA PRINCIPIANTES2342342432231.PPT
F.P.-G4_TRA2_24-2.pptxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Introducción a la Programaciónen Java
Repaso de Java y Arreglos en herramuentas.ppt
Estructuras control java-
Java
Publicidad

Último (20)

PDF
Fundamentos_Educacion_a_Distancia_ABC.pdf
PDF
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
PDF
Metodologías Activas con herramientas IAG
PDF
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
PPTX
AGENTES PATÓGENOS Y LAS PRINCIPAL ENFERMEAD.pptx
PPTX
Presentación: Cumplimiento del Empleador
PDF
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
PDF
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
PDF
benveniste-problemas-de-linguistica-general-i-cap-6 (1)_compressed.pdf
PPTX
caso clínico iam clinica y semiología l3.pptx
DOCX
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
PDF
Punto Critico - Brian Tracy Ccesa007.pdf
PDF
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
PPT
Cosacos y hombres del Este en el Heer.ppt
PDF
COMPLETO__PROYECTO_VIVAN LOS NIÑOS Y SUS DERECHOS_EDUCADORASSOS.pdf
PDF
¿NO HABÉIS LEÍDO?. Por Jonathan Bravo.
PDF
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
PDF
Empieza Con El Porqué - Simon Sinek Ccesa007.pdf
PDF
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
PDF
Escuela Sabática 6. A través del Mar Rojo.pdf
Fundamentos_Educacion_a_Distancia_ABC.pdf
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
Metodologías Activas con herramientas IAG
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
AGENTES PATÓGENOS Y LAS PRINCIPAL ENFERMEAD.pptx
Presentación: Cumplimiento del Empleador
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
benveniste-problemas-de-linguistica-general-i-cap-6 (1)_compressed.pdf
caso clínico iam clinica y semiología l3.pptx
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
Punto Critico - Brian Tracy Ccesa007.pdf
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
Cosacos y hombres del Este en el Heer.ppt
COMPLETO__PROYECTO_VIVAN LOS NIÑOS Y SUS DERECHOS_EDUCADORASSOS.pdf
¿NO HABÉIS LEÍDO?. Por Jonathan Bravo.
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
Empieza Con El Porqué - Simon Sinek Ccesa007.pdf
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
Escuela Sabática 6. A través del Mar Rojo.pdf
Publicidad

Presentacion sobre JAVA, elementos principales a comprender

  • 2. Qué es Java? ● Java es un lenguaje de programación presentado en 1995, basado en clases y orientado a objetos. ● Uno de los objetivos de Java es ser multiplataforma, “write once, run everywhere”. El código puede ejecutar en cualquier plataforma con Java compatible sin recompilar. ● En 2019 sigue siendo uno de los lenguajes de programación más usados. ● Muy usado en aplicaciones cliente-servidor en aplicaciones web. ● No es un lenguaje totalmente orientado a objeto, tiene también tipos elementales.
  • 3. Variables y Constantes [<modificador>]* <tipo> <identificador> [,<identificador>]; int j; int i, I, j101; static char fin = ‘1’; final boolean eureka = true; En la declaración se establece el nombre, tipo alcance y se determina si la variable es constante o no.
  • 4. Tipos de Datos y Tipos de Elementales Factorizar Propiedades. Todas las variables de un tipo comparten una misma representación, toman valores de un mismo conjunto y pueden participar de las mismas operaciones. Efectuar Controles. El lenguaje establece restricciones que aseguran la consistencia entre los operadores provistos y los operandos. Estas restricciones van a ser controladas por el compilador o en ejecución. Administrar la Memoria. El compilador decide cuánto espacio de almacenamiento va a requerir cada dato en ejecución, de acuerdo a su tipo.
  • 5. Tipos de Datos y Tipos de Elementales fuente: https://en.wikibooks.org/wiki/Java_Programming/Primitive_Types
  • 6. Expresiones Operadores relacionales Operadores booleanos Evaluación Completa vs En cortocircuito Conversión byte → short → int → long → float → double igual == distinto != menor < menor o igual <= mayor > mayor o igual >= Conjunción && Disyunción || Negación !
  • 7. Reglas de Precedencia y Asociatividad ++, --, !, - (unario), + (unario), type-cast *, /, % +, - <, >, <=, >= ==, != && || =, +=, -=, *=, /=, %=
  • 8. Asignación <ident> = <expresion>; <tipo> <ident> = <exp> [, <ident> = <exp>]; boolean estado; estado = true; int a = 3, b = 4; Cuando la expresión que aparece a la derecha de una asignación no coincide con el tipo de la variable que está a la izquierda puede producirse una conversión automática o un error de compilación. El error puede salvarse mediante una operación de casting.
  • 9. Asignación <ident> = <expresion>; <tipo> <ident> = <exp> [, <ident> = <exp>]; boolean estado; estado = true; int a = 3, b = 4; Cuando la expresión que aparece a la derecha de una asignación no coincide con el tipo de la variable que está a la izquierda puede producirse una conversión automática o un error de compilación. El error puede salvarse mediante una operación de casting. Declaración Asignación Declaración y Asignación
  • 10. Conversión Automática de Tipos Si al hacer la conversión de un tipo a otro se dan las 2 siguientes premisas: ● Los dos son tipos compatibles. ● El tipo de la variable destino es de un rango mayor al tipo de la variable que se va a convertir. Entonces, la conversión entre tipos es automática.
  • 11. Conversión Automática de Tipos Si al hacer la conversión de un tipo a otro se dan las 2 siguientes premisas: ● Los dos son tipos compatibles. ● El tipo de la variable destino es de un rango mayor al tipo de la variable que se va a convertir. Entonces, la conversión entre tipos es automática. int a = 1; long b = a;
  • 12. Casting Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir entonces no es posible la conversión automática. El programador se ve obligado a realizar una conversión explícita, que se denomina casting. La sintaxis es: destino = (tipo_destino) valor; Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos.
  • 13. Casting Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir entonces no es posible la conversión automática. El programador se ve obligado a realizar una conversión explícita, que se denomina casting. La sintaxis es: destino = (tipo_destino) valor; Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos. int p = 37; short j = (short) p;
  • 14. Casting Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir entonces no es posible la conversión automática. El programador se ve obligado a realizar una conversión explícita, que se denomina casting. La sintaxis es: destino = (tipo_destino) valor; Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos. int p = 37; int a = 40000; short j = (short) p; short j = (short) a; j == -25536
  • 15. Estructuras de Control en Java: Instrucciones < instruccion > ::= < declaración de variable > | < expresion > ; | < bloque > | < instruccion if > | < instruccion while > | < instruccion for > | < instruccion switch > | < instruccion try > | < instruccion return > | < break > | < continue > |
  • 16. Estructuras de Control en Java: Bloques < bloque> ::= { [< instruccion > ]* } { promedio = total / n ; System.out.print("El promedio es "); System.out.println(promedio); } { int temp; temp = x; x = y; y = temp; }
  • 17. Estructuras de Control en Java: Bloques Un bloque define un nuevo ambiente de referenciamiento. Las variables declaradas dentro de un bloque son locales y no son visibles fuera de él. Un mismo nombre no puede ligarse a dos variables en el mismo bloque ni en bloques anidados. Una variable puede ser referenciada a partir de la instrucción que sigue a su declaración. Adoptaremos la convención de declarar las variables de un bloque al principio e inicializarlas explícitamente.
  • 18. Estructuras de Control en Java: Condicional (if) < instruccion if > ::= if (< expresion booleana >) < instruccion > [else < instrucción >]
  • 19. Estructuras de Control en Java: Condicional (if) if (x > y) max = x; else max = y; if (x>y){ max=x; min = y;} else{ max = y; min = x; } if (x>y){ int temp; temp = x; x = y; y = temp; }
  • 20. Estructuras de Control en Java: Condicional (if) if (x > y) if (nota>9) if (x > z) estado = ‘A’; max = x; else if (nota>7) else estado = ‘B’; max = z; else if (nota >4) else estado = ‘C’; if (y > z) else if (nota < 4) max = y; estado = ‘D’; else max = z;
  • 21. Estructuras de Control en Java: Condicional (if) estado = ́B ́; estado = ́B ́; if (promedio > 7) if (promedio > 7){ if (inasistencias<3) if (inasistencias<3) estado = ‘A’; estado = ‘A’; } else else estado = ‘C’; estado = ‘C’;
  • 22. Estructuras de Control en Java: Condicional (if) estado = ́B ́; estado = ́B ́; if (promedio > 7){ if (promedio > 7){ if (inasistencias<3) if (inasistencias<3) estado = ‘A’; estado = ‘A’; } else else estado = ‘C’; estado = ‘C’; }
  • 23. Estructuras de Control en Java: Condicional (switch) <instruccion switch>::= switch (<expression>) { [ case <constante> : <instruccion> ]* default: <instruccion> }
  • 24. Estructuras de Control en Java: Condicional (switch) switch ( nota ) { case 10: case 9: estado = ‘A’; break; case 8: case 7: estado = ‘B’; break; case 6: case 5: estado = ‘C’ ; break; default: estado = ́D ́; }
  • 25. Estructuras de Control en Java: Iteración (while) < instruccion while > ::= while (<expresion booleana>) <instrucción> < instruccion do while> ::= do <instrucción> while (<expresion booleana>)
  • 26. Estructuras de Control en Java: Iteración (while) int numero; int digitos = 0; System.out.println (“Ingrese el numero”); numero = ES.leerEntero (); while ( numero > 0 ) { numero /=10; digitos++; } System.out.println(digitos);
  • 27. Estructuras de Control en Java: Iteración (while) int numero; int digitos = 0; System.out.println (“Ingrese el numero”); numero = ES.leerEntero (); do { numero /=10; digitos++; } while ( número > 0 ); System.out.println(digitos);
  • 28. Estructuras de Control en Java: Iteración (for) < instruccion for > ::= for ([<asignacion>]; [<expresion>] ; [<expresion>]) <instrucción>
  • 29. Estructuras de Control en Java: Iteración (for) < instruccion for > ::= for ([<asignacion>]; [<expresion>] ; [<expresion>]) <instrucción> int n; for ( n = 1 ; n <= 10 ; n++ ) System.out.println( n*n ); for ( int n = 1 ; n <= 10 ; n++ ) System.out.println( n*n );
  • 30. Estructuras de Control en Java: Iteración (for) sum = 0 ; for ( n = 1 ; n <= 10 ; n++ ) sum = sum + n ; for ( n = 1, sum = 0 ; n <= 10 ; n++ ) sum = sum + n ; for (n=1,sum=0; n<=10; sum=sum+n,n++); for ( n = 1, sum = 0 ; sum <= 100 ; n++ ) sum = sum + n ; for ( int n = 1, sum = 0 ;sum <= 100 ; n++ ) sum = sum + n ;
  • 31. Estructura de un programa en Java La unidad básica de programación en Java es la clase. Un programa en Java está constituido por una colección de clases . La implementación de una clase consiste en definir sus miembros: •Atributos: variables de instancia y de clase •Servicios: constructores y métodos
  • 32. Estructura de un programa en Java: Métodos Sintaxis [ < Modificador > ]* < Tipo del Resultado > < Identificador > ( [< Parámetros Formales > ]* ) { < bloque > }
  • 33. Estructura de un programa en Java: Métodos Sintaxis [ < Modificador > ]* < Tipo del Resultado > < Identificador > ( [< Parámetros Formales > ]* ) { < bloque > } public static void main(String [] args) { ... }
  • 34. Estructura de un programa en Java: Métodos Para que un programa en Java pueda ejecutarse es necesario definir una clase que incluya un método llamado main(). class Hello { public static void main(String [] args){ System.out.println(“Hello World”); } } definición de una clase Definición de un método.
  • 35. Estructura de un programa en Java: Métodos •La primera línea define una clase llamada Hello. •La segunda clase define el método main, asociado a los modificadores public y static. Es importante que no omitan ni alteren el encabezamiento del main. •La palabra void indica que el método main no retorna ningún valor. •La forma (String args[]) es la definición de los argumentos que recibe el método main. •La instrucción System.out.println muestra un literal en pantalla.
  • 36. BlueJ
  • 37. Procesador Número ProcesadorNumero sumaDigs ( n:entero ) : entero estaDig ( n:entero, d:entero ) : booleano
  • 38. Procesador Número ProcesadorNumero sumaDigs ( n:entero ) : entero estaDig ( n:entero, d:entero ) : booleano class ProcesadorNumero { public static int sumaDig(int n ){ // Retorna la suma de los dígitos del número n … } public static boolean estaDig (int n, int d ){ //Retorna true si y solo si d es un dígito del número n … } }
  • 39. Procesador Número ProcesadorNumero sumaDigs ( n:entero ) : entero estaDig ( n:entero, d:entero ) : booleano class ProcesadorNumero { public static int sumaDig(int n ){ // Retorna la suma de los dígitos del número n … } public static boolean estaDig (int n, int d ){ //Retorna true si y solo si d es un dígito del número n … } } Comentarios de una sola línea. Modificadores de visibilidad Clases como unidad de programación
  • 40. Procesador Número class ProcesadorNumero{ public static int sumaDig(int n){ //Retorna la suma de los dígitos del número n int s=0; while (n>0) { s = s + n % 10; n = n/10; } return s; } ... }
  • 41. Procesador Número class ProcesadorNumero{ public static int sumaDig(int n){ //Retorna la suma de los dígitos del número n int s=0; while (n>0) { s = s + n % 10; n = n/10; } return s; } ... } Clases como unidad de programación Tipo Elemental int La instrucción de return Instrucción while Asignaciones y expresiones, operadores y operandos Parámetros y Variables Locales
  • 42. Procesador Número - Tester Para que un programa en Java pueda ejecutarse es necesario que una clase incluya un método llamado main(). class Tester{ public static void main (String args[]) { int s = sumaDig(25036); System.out.println(“La suma es “+s); } }
  • 43. Procesador Número public class ProcesadorNumero{ … public static boolean estaDig(int n,int d ){ /* Retorna true si y solo si d es un dígito del número n */ boolean esta = false; while (n>0) && !esta { if (d == n % 10) esta = true; n = n/10; } return esta; } }
  • 44. Procesador Número public class ProcesadorNumero{ … public static boolean estaDig(int n,int d ){ /* Retorna true si y solo si d es un dígito del número n */ boolean esta = false; while (n>0) && !esta { if (d == n % 10) esta = true; n = n/10; } return esta; } } Operadores relacionales y lógicos. Comentario de múltiples líneas. Tipo elemental boolean Condicional if