+ All Categories
Home > Documents > Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de...

Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de...

Date post: 25-Jan-2016
Category:
Upload: ana-ruiz-pineiro
View: 218 times
Download: 0 times
Share this document with a friend
40
Java Java es un lenguaje de programación presentado en 1995 enfocado a: • soportar los fundamentos de la programación orientada a objetos. • generar código independiente de la arquitectura de la computadora Actualmente se utiliza particularmente para desarrollar aplicaciones para Internet. Introducción a la Programación Orientada a Objetos
Transcript
Page 1: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Java

Java es un lenguaje de programación presentado en 1995 enfocado a:

• soportar los fundamentos de la programación orientada a objetos.

• generar código independiente de la arquitectura de la computadora

Actualmente se utiliza particularmente para desarrollar aplicaciones para Internet.

Introducción a la Programación Orientada a Objetos

Page 2: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

VARIABLES, CONSTANTES Y EXPRESIONES

ASIGNACIÓN.

TIPOS ELEMENTALES. PRECEDENCIA DE LOS OPERADORES. CASTING

ESTRUCTURAS DE CONTROL. CONDICIONAL E ITERACIÓN. RECURSIVIDAD

ESTRUCTURA DE UNA CLASE EN JAVA.

MÉTODOS.

EL MÉTODO MAIN.

Elementos Básicos de Java

Page 3: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Variables y Constantes

Declaración [< modificador>] < tipo > < ident > [ , < ident > ] ;

Introducción a la Programación Orientada a Objetos

int i,I,j101;

static char fin =‘.’;

boolean eureka;

La declaración establece el nombre, tipo, alcance y determina si es variable o constante.Una declaración de constante establece también el valor.En el caso de una variable el valor puede quedar establecido en la declaración o no.

Page 4: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Tipos de Dato

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 Elementales

Introducción a la Programación Orientada a Objetos

Page 5: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Nombre de Tipo

valor memoria requerida

Rango

byte integer 1 byte -128 a 127

short integer 2 bytes -32768 a 32767

int integer 4 bytes -2147483648 a2147483647

long integer 8 bytes

float floating-point 4 bytes

double floating-point 8 bytes

char single character

2 bytes UNICODE

boolean true or false 1 bit

Tipos Elementales

Introducción a la Programación Orientada a Objetos

Tipos de Dato

Page 6: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Operadores booleanos•Conjunción •Disyunción •Negación

Operadores relacionales

igual ==

distinto !=

menor <

menor o igual <=

mayor >

mayor o igual >=

Expresiones

Introducción a la Programación Orientada a Objetos

Page 7: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Evaluación

•Completa•En cortocircuito

Conversión

Jerarquía de Tipos

byte →short→int→long→float→double

Expresiones

Introducción a la Programación Orientada a Objetos

Page 8: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Reglas de Precedencia y Asociatividad

++, --, !, unary – undary +, type-cast

*, /, %

+, -

<, >, <=, >=

==, !=

&&

||

?:

=, +=, -=, *=, /=, %=

Expresiones

Introducción a la Programación Orientada a Objetos

Page 9: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Asignación

< ident > = < expresion >;

< tipo >< ident > = < exp > [,< ident > = < exp > ];

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.

El error puede salvarse mediante una operación de casting.

Expresiones

Introducción a la Programación Orientada a Objetos

Page 10: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Conversión automática de tipos

Expresiones

Introducción a la Programación Orientada a Objetos

Si al hacer la conversión de un tipo a otro se dan las 2

siguientes premisas:

•Los dos tipos son 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

Page 11: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Casting

Expresiones

Introducción a la Programación Orientada a Objetos

•Cuando  el número a convertir está fuera del rango del tipo a que se quiere convertir, entonces la conversión automática es imposible.

•El programador se ve obligado a realizar una conversión forzada (explicita), que se denomina casting.

•La sintaxis para realizar un casting es:

destino = (tipo_destino) valor

•En el caso de los tipos numéricos, al "recortar" el valor de la variable de rango mayor perdemos precisión

Page 12: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

Instrucciones

< declaración de variable > | < expresion > ; | < bloque > | < instruccion if > | < instruccion while > | < instruccion for > |< instruccion switch > | < instruccion try > | < instruccion return > | < break > | < continue > |

Introducción a la Programación Orientada a Objetos

< instruccion > ::=

Page 13: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

{ [< instruccion > ]* }

{ promedio = total / n ; System.out.print("El promedio es "); System.out.println(promedio); }

{ int temp; temp = x; x = y;

y = temp; }

Introducción a la Programación Orientada a Objetos

< bloque> ::=

Bloques

Page 14: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en JavaBloques

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.

Introducción a la Programación Orientada a Objetos

Page 15: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

if < expresion booleana > < instruccion > else < instrucción >

Condicional

Introducción a la Programación Orientada a Objetos

< instruccion if > ::=

Page 16: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

if (x > y) { max = x; min = y ;} else { max = y; min = x ;}

if (x > y) { int temp; temp = x; x = y; y = temp;}

if (x > y) max = x;else max = y;

Condicional

Estructuras de Control en Java

Introducción a la Programación Orientada a Objetos

Page 17: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

if (x > y) if (x > z) max = x; else max = z; else if (y > z) max = y; else max = z;

Condicional

Introducción a la Programación Orientada a Objetos

if (nota > 9) estado = ´A´; else if (nota > 7) estado = ´B´ ; else if (nota > 4) estado = ´C´ ; else if (nota < 4) estado = ´D´ ;

Page 18: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

estado = ´B´;if (promedio > 7) if (inasistencias<3) estado = ´A´; else estado = ´C´;

Condicional

Introducción a la Programación Orientada a Objetos

estado = ´B´; if (promedio > 7) { if (inasistencias<3) estado = ´A´; } else estado = ´C´

Page 19: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

switch

switch (<expression>) { [ case <constante> : <instruccion> ]* default: <instruccion> }

Condicional

Introducción a la Programación Orientada a Objetos

<instruccion switch>::=

Page 20: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

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´; }

Condicional

Introducción a la Programación Orientada a Objetos

Page 21: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

while (<expresion booleana>) <instrucción>

do <instrucción>while (<expresion booleana>)

Iteración

Introducción a la Programación Orientada a Objetos

< instruccion while > ::=

< instruccion do while> ::=

Page 22: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

int numero; int digitos = 0; System.out.println (“Ingrese el numero”);numero = ES.leerEntero ();while ( número > 0 ) { numero /=10; digitos++; } System.out.println(digitos);

Iteración

Introducción a la Programación Orientada a Objetos

Page 23: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

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);

Iteración

Introducción a la Programación Orientada a Objetos

Page 24: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

for ( <asignacion>; <expresion> ; <expresion>) [ <instrucción>]*

for ( n = 1 ; n <= 10 ; n++ ) System.out.println( n, n*n );

Iteración

for ( int n = 1 ; n <= 10 ; n++ ) System.out.println( n, n*n );

Introducción a la Programación Orientada a Objetos

< instruccion for > ::=

Page 25: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructuras de Control en Java

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++);

Iteración

Introducción a la Programación Orientada a Objetos

for ( n = 1, sum = 0 ; sum <= 100 ; n++ ) sum = sum + n ;

for ( int n = 1, sum = 0 ;sum <= 100 ; n++ ) sum = sum + n ;

Page 26: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

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

Introducción a la Programación Orientada a Objetos

Page 27: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructura de un programa en JAVA

( ) { } [ ] : ,

Símbolos separadores

Comentarios

•Los que ocupan varias líneas y se encierran entre símbolos /* y */ o /** y */•Los que comienzan con el símbolo // y terminan junto con la línea

Introducción a la Programación Orientada a Objetos

Page 28: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Estructura de un programa en JAVA

[ < Modificador > ]* [< Tipo del Resultado > ]

< Identificador > ( [< Parámetros Formales > ]* )

{ < bloque > }

MétodosSintaxis

Introducción a la Programación Orientada a Objetos

Page 29: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

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!"); }}

Introducción a la Programación Orientada a Objetos

Page 30: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

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 de 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.

Introducción a la Programación Orientada a Objetos

Page 31: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

BlueJ

Introducción a la Programación Orientada a Objetos

Page 32: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Procesador Número

ProcesarNumero

sumaDigitos ( n:entero ) : entero

estaDigito ( n:entero, d:entero ) : booleano

sumaP ( n:entero ) : booleano

Page 33: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

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 }}

• Clases como unidad de programación• Identificadores• Modificadores public static• Símbolos delimitadores { } /* */ // () , ;

Elementos de Java

Page 34: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

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;}

El tipo elemental intParámetros y variables localesAsignaciones y expresiones, operadores y operandosLa iteración whileLa instrucción de retorno

Elementos de Java

Page 35: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Para que un programa en JAVA pueda ejecutarse es necesario que una clase incluya un método llamado main().

public static void main (String args[]) { int s = sumaDig(25036); System.out.println(“La suma es “+s); }

Introducción a la Programación Orientada a Objetos

Elementos de Java

Page 36: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

•Es importante que no omitan ni alteren el encabezamiento de 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.

Introducción a la Programación Orientada a Objetos

Elementos de Java

Page 37: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

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;}

Elementos de Java

Page 38: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Implemente una consulta en Java, consistente con el planteo recursivo propuesto, para calcular la suma de los dígitos pares de un número N. 

public static int sumaP(int n){

}

Problema

Page 39: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

Planteo

Caso trivial: la suma de los dígitos pares de un número N impar, menor a 10 es 0. Caso trivial: la suma de los dígitos pares de un número N par, menor a 10 es N. Caso Recursivo: la suma de los dígitos pares de un número N =dm,dm-1,…,d1,d0 (m>0) con d0 par es la suma de los dígitos pares de N’= dm,dm-1,…,d1, más d0,

Caso Recursivo: la suma de los dígitos pares de un número N =dm,dm-1,…,d1,d0 (m>0) con d0 impar es la suma de los dígitos pares de N’= dm,dm-1,…,d1,

Page 40: Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código.

 

Dada la siguiente definición recursiva:

 

 

0 si N < 10 y N es impar

1 si N < 10 y N es par

contarPPI (N) contarPPI(N/10) +1 si N = d1.. dk con k>1,

k impar y dk es par contarPPI(N/10) en cualquier otro caso.

 

Explique verbalmente qué valor computa la definición.

Implemente un método en Java a partir de la definición, asumiendo que dispone de un método que retorna la cantidad de dígitos de un número y otro que decide si un número es par.

Reformule la implementación de modo que la cantidad de dígitos se calcule una única vez.

 

Problema


Recommended