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.

Slides:



Advertisements
Presentaciones similares
Curso de java básico (scjp)
Advertisements

Métodos y parámetros.
El proceso de desarrollo de software
El Proceso de desarrollo de software
El proceso de desarrollo de software
Abstracciones y Modelos
El proceso de desarrollo de software
Desarrollo de Aplicaciones para Internet
1.2 Sintaxis del lenguaje Java.
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO
ESTRUCTURAS DE SECUENCIA
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.
Conceptos Básicos de Java
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
Funciones en lenguaje C
Estructuras de Control
Modificadores.
POO Java Módulo 3 Elementos de programas Identificadores
Java Orientado a Objetos CLASES,OBJETOS Y MÉTODOS
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Tema 6: Clases Antonio J. Sierra.
UNIVERSIDAD DE MANAGUA I CUATRIMESTRE INTRODUCCION A LA PROGRAMACION
SCJP Sun Certified Programmer for Java 6
Características de “C”
Clase Teórica No. 4 Programación IV
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SEMANA TRES ASIGNACION.
El lenguaje de programación Java
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Objetos.
Unidad III Elementos del lenguaje C++
Tema 2: Los tipos de datos
Algoritmos y Desarrollo de Programas I
INGENIERIA EN SISTEMAS COMPUTACIONALES
Java. Java nació el año 1991, por un par de ingenieros de la Sun Microsystems.
Capítulo 1 “Elementos de Programación”
Sintaxis de C# (Declaraciones y Tipos)
Curso Programación en Java
Tipo de Datos Básicos.
Informática Ingeniería en Electrónica y Automática Industrial
El Lenguaje C++. Creación de programas simples de C++ Builder como ejercicios en C++. Los elementos de control fundamentales en C++, incluyendo operadores.
Resumen Fundamentos de Programación/ Programación I
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Clases.
El Concepto de Tipo Los tipos permiten indicar la característica de los valores (datos) manipulados en un programa. Toda variable tiene asociado un tipo.
Programación orientada a objetos. El método main es el comportamiento por el cual comienzan todos los programas en Java, de la misma forma en la que C,
Elementos básicos del lenguaje
Ivette C. Martínez - Héctor Palacios Java – Modulo 1 Introducción y Fundamentos del lenguaje de programación Java.
Programación avanzada en Java Miguel Ángel Corella 16 de Septiembre de 2005.
ELO3291 Estructuras fundamentales de la programación en Java ELO-329: Diseño y programación orientados a objetos Agustín J. González.
IDENTIFICADORES Un identificador es un "nombre" que nos permite dirigirnos específicamente a una de las entidades propias del lenguaje, es decir, son los.
Aun en problemas muy simples surge la necesidad de agrupar valores elementales de alguna manera. Cuando representamos una caja de ahorro bancaria definimos.
Términos algoritmo diseñar algoritmo implementar algoritmo
CARACTERÍSTICAS Es un lenguaje de programación estructurado de propósito general. Está estrechamente asociado al sistema operativo UNIX, ya que el propio.
PRINCIPIOS DE PROGRAMACIÓN

Fundamentos de Programación
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Abstracción.
Estructuras de Decisión
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Tipo.
Ing. Esp. Ricardo Cujar. Permite la ejecución de una sentencia, dada una determinada condición. If(condición){ sentencia(s) a ejecutar en caso de que.
Conceptos y Lenguaje Imperativo
Clases “ Es una Abstracción de un elemento del mundo real ”
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) V. GESTIÓN DE TIPOS Y GENERACIÓN DE CÓDIGOS.
Algunas Características de C++ no presentes en C Agustín J. González ELO-329.
Diferencia entre implementar en RPA e IPOO - Diseño En.
Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Práctica 3.
Tema – 5 Construcciones condicionales Introducción En un programa es usual ejecutar unas instrucciones u otras en función de unas condiciones especificadas.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
JAVA: elementos básicos
Transcripción de la presentación:

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

V ARIABLES, CONSTANTES Y EXPRESIONES A SIGNACIÓN. T IPOS E LEMENTALES. P RECEDENCIA DE LOS OPERADORES. C ASTING E STRUCTURAS DE C ONTROL. C ONDICIONAL E ITERACIÓN. R ECURSIVIDAD E STRUCTURA DE UNA C LASE EN J AVA. M ÉTODOS. E L MÉTODO MAIN. Elementos Básicos de Java

Variables y Constantes Declaración [ ] [, ] ; 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.

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

Nombre de Tipo valormemoria requerida Rango byteinteger1 byte-128 a 127 shortinteger2 bytes a intinteger4 bytes a longinteger8 bytes floatfloating-point4 bytes doublefloating-point8 bytes charsingle character 2 bytesUNICODE booleantrue or false1 bit Tipos Elementales Introducción a la Programación Orientada a Objetos Tipos de Dato

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

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

Reglas de Precedencia y Asociatividad ++, --, !, unary – undary +, type-cast *, /, % +, -, = ==, != && || ?: =, +=, -=, *=, /=, %= Expresiones Introducción a la Programación Orientada a Objetos

Asignación = ; = [, = ]; 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

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

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

Estructuras de Control en Java Instrucciones | ; | | | | Introducción a la Programación Orientada a Objetos ::=

Estructuras de Control en Java { [ ]* } { 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 ::= Bloques

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. Introducción a la Programación Orientada a Objetos

Estructuras de Control en Java if else Condicional Introducción a la Programación Orientada a Objetos ::=

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

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

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´

Estructuras de Control en Java switch switch ( ) { [ case : ]* default: } Condicional Introducción a la Programación Orientada a Objetos ::=

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

Estructuras de Control en Java while ( ) do while ( ) Iteración Introducción a la Programación Orientada a Objetos ::=

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

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

Estructuras de Control en Java for ( ; ; ) [ ]* 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 ::=

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 ;

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

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

Estructura de un programa en JAVA [ ]* [ ] ( [ ]* ) { } Métodos Sintaxis Introducción a la Programación Orientada a Objetos

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

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

BlueJ Introducción a la Programación Orientada a Objetos

Procesador Número ProcesarNumero sumaDigitos ( n:entero ) : entero estaDigito ( n:entero, d:entero ) : booleano sumaP ( n: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 } Clases como unidad de programación Identificadores Modificadores public static Símbolos delimitadores { } /* */ // (), ; Elementos de Java

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 int Parámetros y variables locales Asignaciones y expresiones, operadores y operandos La iteración while La instrucción de retorno Elementos de Java

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

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

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

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

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 =d m,d m-1,…,d 1,d 0 (m>0) con d 0 par es la suma de los dígitos pares de N’= d m,d m-1,…,d 1, más d 0, Caso Recursivo: la suma de los dígitos pares de un número N =d m,d m-1,…,d 1,d 0 (m>0) con d 0 impar es la suma de los dígitos pares de N’= d m,d m-1,…,d 1,

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) +1si N = d 1.. d k con k>1, k impar y d k 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