Programación Orientada a Objetos en Java



Documentos relacionados
Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Variables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Programa Java. El lenguaje de programación Java. Comentarios. Programa Java. Palabras reservadas. Identificadores

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

PROGRAMACIÓN EN JAVA. { una línea para definir, crear o ejecutar ; }

Elementos léxicos del lenguaje de programación Java

3.3 Conceptos Básicos del Lenguaje Java

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +.

Tema 2. El lenguaje JAVA

Construcciones del Lenguaje Java

Introducción a las sentencias de control

Tema 2. El lenguaje de programación Java (Parte 1)

Introducción a Java LSUB. 30 de enero de 2013 GSYC

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Tema 2.- Objetos y mensajes

Tema 2 Anexo: Aspectos básicos

Java para programadores

Práctica 3 mtp. metodoloxía e tecnoloxía da programación. Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java.

Comprender las diferencias entre tipos de datos primitivos similares, y aprender a elegir el tipo más conveniente en cada caso.

1.2. Es Java un lenguaje ideal para aprender a programar? 1.4. Cuáles son las versiones y distribuciones Java y cuál usar?

Java. Introducción a la Programación Orientada a Objetos

Introducción a Java. Introducción a Java. Programación I

Universidad Autónoma de Tlaxcala. M.C. José Juan Hernández Mora. Primera Sesión

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Tema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo

Estructura de datos y Programación

4. Operadores Operador asignación

VARIABLES, CONSTANTES Y EXPRESIONES ASIGNACIÓN. TIPOS ELEMENTALES. PRECEDENCIA DE LOS ESTRUCTURAS DE CONTROL. CONDICIONAL E

Introducción a Java 10/02/2011. Tokens. Juan Manuel Fernández Peña Curso Rev Tokens. Tokens

Los caracteres de Java pueden agruparse en letras, dígitos, espacios en blanco, caracteres especiales, signos de puntuación y secuencias de escape.

JAVA 1. Introducción

Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java

5. Sentencias selectivas o condicionales

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Tema 3 Constantes, Variables y Tipos

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN

INDICE Prologo 1 Recorrido rápido de java 2 Clases y objetos 3 Extensión de clases

Operadores. Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++.

Sebastián García Galán

Programación Web Tema 3.2 Java Script Estructura del Lenguaje. Ramón Alcarria ETSI en Topografía, Geodesia y Cartografía - UPM

Instituto Tecnológico de Celaya

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Bloque II. Elementos del lenguaje de programación Java

Características de Lenguajes de Scripts

Bibliografía (Java) Java: Introducción a Java

Clase adicional 2. Estructuras básicas de control. Temas

Modulo 11. Clases y Objetos en Java

Java Básico. La sintaxis. Copyright

Estructuras de control condicionales

JavaScript. Contenidos. Introducción El lenguaje Validación de formularios. Programación en Internet DLSI - Universidad de Alicante 1

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

Es ambigua, ya que la división y la multiplicación tienen el mismo grado de precedencia, qué parte de la expresión se realiza primero?

Tema 05: Elementos de un programa en C

Fundamentos del Lenguaje de Programación Java

TIPOS DE DATOS BASICOS EN LENGUAJE C

Lección 2 Introducción al lenguaje C

Unidad Didáctica 3. Tipos genéricos. Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos

abril de 2017 Desarrollo de aplicaciones en Java Tipos de datos primitivos Tipos de datos Elementos de aplicaciones simples

3. Tipos primitivos de dato

CONCEPTOS BASICOS DEL LENGUAJE JAVA

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 1

Objetivo de aprendizaje del tema

Introducción a Java. Fernando Cerezal López. 24 Noviembre 2005

Estructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa

CURSO DE LENGUAJE C. 4.1 Conceptos básicos de funciones 4.2 Funciones que regresan valores no enteros 4.3 Variables externas 4.4 Reglas de alcance

Estructura de Datos Unidad 1: Repaso del Lenguaje Java

SEMINARIO C para programadores java (este seminario forma parte de las actividades del proyecto piloto) Sesión 1

Unidad II Fundamentos de C++ M.C. Juan Carlos Olivares Rojas

Java posee dos grandes categorías de tipos para las variables:

El lenguaje C. if (a>3) { printf("hola"); // bloque printf("%d",a); // de getch(); //código } Partes de un programa en C.

En este capitulo se estudiarán los conceptos relacionados a métodos, como lo son sobrecarga, métodos estáticos.

FUNDAMENTOS PARA LA CONSTRUCCIÓN DEL CÓDIGO A PARTIR DEL ALGORITMO

goto goto Código Spague-

A continuación se mostrará un breve resumen del lenguaje, extraído del libro El Lenguaje de Programación C#.

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

Estructuras de control selectivas

Un identificador le da nombre único a un elemento en un programa (Variables, procedimientos, etc.). No puede contener operadores como + - * /

LENGUAJE. Tema 2 Elementos de un programa

Práctica 2. Reutilización de código Elementos básicos del lenguaje Java Definición de variables, expresiones y asignaciones

UNIDAD 2: INTRODUCCIÓN AL LENGUAJE DE PROGRAMACiÓN R

Programación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.

Operando1 operador de relación Operando2

UNIDAD I. ALGORITMOS

Programación Estructurada. Sesión 2:El lenguaje de programación C

Lenguaje de Programación MSc. Daniel Alejandro Yucra Sotomayor

2. Estructura de un programa en Java

Curso Informática Lección 4. Instrucciones de control

Elementos de un programa en C

Introducción a Java LSUB. 15 de enero de 2015 GSYC

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

PROGRAMACIÓN ORIENTADA A OBJETOS 10/02/2009. Examen de Java. Nombre: DNI: Titulación:

Módulo. = Asignación = = Comp. de igualdad!= Com. de desigualdad <= Comp. menor o igual >= Comp. mayor o igual AND lógico OR lógica.

Variables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.

Introducción a la Programación en Java

Descripción de un Programa

Introducción a la Programación IV. Estructuras de Control. Orden de ejecución. Transferencia de Control. Transferencia de Control II 12/3/10

Transcripción:

Programación Orientada a Objetos en Java Curso 2006-2007 Tema 2 Sintaxis Básica Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Comentarios Existen 3 tipos de comentarios De línea: //comentario de línea De bloque: /* comentario de bloque */ De javadoc: /** @author Gonzalo Méndez @version 1.0 comentario de javadoc */ 1

Identificadores Permiten nombrar paquetes, clases, interfaces, variables, objetos Comienzan con una letra, _ o $ Seguidos por letras o dígitos, y pueden incluir ñ y vocales acentuadas Cualquier longitud Se distinguen mayúsculas y minúsculas x, _var1, año, $nuevo_carácter Por convenio: Identificadores Las clases comienzan con mayúscula: Hola Los métodos y atributos comienzan con minúscula: leer, altura los atributos pueden comenzar con _: _altura Las constantes van en mayúsculas: PI En identificadores formados por varias palabras, la primera letra de cada palabra en mayúsculas: HolaMundo, getwidth 2

Palabras Reservadas abstract continue for new switch volatile boolean default goto null synchronized while break do if package this byte double implements private threadsafe byvalue else import protected throw case extends instanceof public throws catch false int return transient char final interface short true class finally long static try const float native super void Otras palabras reservadas (sin uso actual): cast future generic inner operator outer rest var Separadores () [] ;,. Para delimitar listas de parámetros o de argumentos. Para modificar la precedencia en una expresión. Para delimitar condiciones. Para realizar conversiones de tipo (moldes o casting). Para definir bloques de código. Para delimitar listas de valores iniciales de los vectores (arrays). Para declarar vectores y referenciar elementos de los mismos. Para terminar instrucciones. Para separar identificadores en declaraciones. Para encadenar expresiones (operador coma). Para acceder a atributos de objetos u objetos globales de clases. Para pasar mensajes a objetos. Para acceder a un subpaquete de un paquete. 3

Tipos de Datos Numéricos Tipo Tamaño Valor mínimo Valor máximo byte 8 bits -128 127 short 16 bits -32768 32767 int 32 bits -2147483648 2147483647 long 64 bits < -9 x 10 18 > 9 x 10 18 float 32 bits +/- 3.4 x 10 38 con 7 dígitos significativos double 64 bits +/- 1.7 x 10 38 con 15 dígitos significativos Un tipo A es de mayor rango que un tipo B si A es superconjunto de B. Las variales de tipo B siempre se pueden asignar a las de tipo A double > float > long > int > short > byte Tipos de Datos no Numéricos boolean true y false char: caracteres (16 bits) a, 7 Caracteres de escape: \n OJO: 7 7 4

Variables Espacios de memoria donde se almacena un número, un carácter, un objeto En los lenguajes tipados como Java, a las variables se les asigna un tipo El tipo determina los valores que puede tener la variable, además de las operaciones que se le pueden aplicar Declaración de Variables La declaración de una variable es tipovariable nombrevariable [=valorinicial]; int ancho; int x = 3; Otras posibilidades Juntar la declaración de varias variables del mismo tipo: int altura,x; int a, x=3; int edad=25, altura=173; 5

Constantes Son variables cuyo valor no se puede modificar Se declaran como una variable, añadiéndoles el modificador final final float PI = 3.14159; final char SALTO_LINEA = \n ; final short MAX_SHORT = 32767; Ámbito de los Identificadores define un bloque de código Los bloques pueden anidarse Un identificador puede usarse dentro del bloque de código en el que está definido, y en los bloques anidados 6

Operador de Asignacion Para darle valor a una variable a = 2; b = 3+5; c = a+b; Asignación múltiple A = b = 5; Operadores Aritméticos Unarios: + - ++ -- Preincremento: se incrementa y y se asigna el valor a x x = ++y; Postincremento: se asigna el valor de y a x y luego se incrementa y x = y++; Binarios: + - * / % Abreviados: += -= *= /= %= x += 3; equivale a x = x+3; 7

Otros Operadores Relacionales: ==!= < <= > >= Lógicos (evaluación perezosa): AND: && o &para evaluación impaciente OR: o para evaluación impaciente NOT:! XOR: ^ Conversión de Tipos La conversión a tipos mayores es automática La conversión a tipos menores hay que hacerla explícita, indicando entre paréntesis el tipo deseado cast int x; float f = 5.3; x = (int)f; 8

Precedencia de Operadores Mayor cast ++ -- (prefijos)! * / % + - < <= > >= ==!= & ^ && Menor = += -= *= /= %= Se puede modificar la precedencia de los operadores agrupando expresiones con paréntesis x = 25 + 4 * 3 // x = 37 x = (25 + 4) * 3 // x = 87 Matemáticas con Math Math es una clase que proporciona operaciones matemáticas más complejas Math.abs(num) Math.max(a,b) Math.min(a,b) Math.asin(num) Math.acos(num) Math.atan(num) Math.sin(num) Math.cos(num) Math.tan(num) Math.exp(num) Math.log(num) Math.pow(a,b) Math.sqrt(num) Math.random() Math.round(num) Math.toDegrees(num) Math.toRadians(num) 9

Tipos Enumerados Disponibles desde la versión 5 de java public class EjEnumerados public enum Estación PRIMAVERA, VERANO, OTOÑO, INVIERNO; public static void main(string[] args) Estación mia; mia = Estación.PRIMAVERA; System.out.println("Mi estación preferida es: "+mia); Arrays Se pueden declarar de varias formas: int[] primeros_primos; int primeros_primos[]; Hay que asignarles un tamaño: primeros_primos = new int[10]; Se pueden inicializar al declararlos: int[] primeros_primos=1,2,3,5,7,11,13,17,19,23; Se les puede preguntar su longitud int longitud = primeros_primos.length; 10

Arrays Acceder a un elemento del array: int primer_primo=primeros_primos[0]; Otra forma de inicializar un array: import java.util.arrays; Arrays.fill(primeros_primos,0); Asignación de arrays: Se copia una referencia, no el array entero otros_primos=primeros_primos; Arrays de arrays: Arrays Funcionan igual que los anteriores: int matriz[][] = new int[4][4]; También la inicialización: int matriz[][] = 1,2,3,4,5,6,7,8,9; Pueden tener distinta longitud: float ejemplo[][] = new float[2][]; ejemplo[0] = new float[9]; ejemplo[1] = new float[373]; Pueden tener más de dos dimensiones 11

Sentencias de Control de Flujo Sirven para variar la ejecución del programa en función de una determinada condición Selección condicional if-else, switch Bucles for, while, do-while Paso de control break, continue Bifurcación Condicional: IF if(condición) instrucción; if(condición) instrucción-if; else instrucción-else; if(condición) secuencia-de-instrucciones; if(condición) secuencia-de-instrucciones-if; else secuencia-de-instrucciones-else; CUIDADO a==5 //comparacion, true o false a=5 //asignacion, true 5==a //comparacion, true o false 5=a //ERROR if (a>b) max=a; if (a>b) max=a; else max=b; if (a>b) max=a; System.out.println ( Max = +max); if (a>b) max=a; System.out.println ( Max = +max); else max=b; System.out.println ( Max = +max); 12

if-else Anidados if (condicion) if (otra_condicion) instrucción; else if (otra_mas) instrucción; else instrucciones; if (es_redondo==true) if (radio>7) radio--; else // es cuadrado if (ladox!= ladoy) es_rectangulo=true; else es_rectangulo=false; es_cuadrado=true; if con Varias Ramas En realidad son if anidados Cada sentencia if es una única instrucción if (condicion1) instrucción1; else if (condicion2) instrucción2; else if (condicion3) instrucción3; else instrucción4; 13

El Operador Condicional Es un sustituto del if para elecciones simples Variable=condicion?expresion_si_true:expresion_si_false; max=(a>b)?a:b; Selección Condicional con Varias Ramas Como se ha visto antes, la sentencia if se puede usar para elegir la ejecución entre más de dos opciones Si la elección se puede realizar en función del valor que tome una variable o del resultado de evaluar una expresión, entonces es más adecuado utilizar la sentencia switch 14

switch switch (expresion) case a: instrucciones; break; case b: instrucciones; break; default: instrucciones; switch (num_mes) case 1: mes= Enero ; break case 2: mes= Febrero ; break; default: System.out.println( error ); System.exit(-1); switch La expresión que se evalúa tiene que ser un tipo simple boolean, char, int Si no se pone la sentencia break al final de cada case también se ejecutan las instrucciones del siguiente case Útil para agrupar opciones en las que se hace lo mismo 15

Bucle for Su uso está indicado cuando se quiere repetir una acción un número fijo de veces for (inicialización;condición;incremento) instrucción; for (inicialización;condición;incremento) instrucciones; Bucle for for (int i=0;i<10;i++) System.out.println(i); La condición del bucle es la condición de permanencia en el bucle, no la de finalización del bucle. Se puede poner más de una expresión en cada una de las tres partes del for, separadas por comas. 16

Bucle for Existe una variante para recorrer arrays y colecciones: for (tipo iterador : array) //expresiones int primeros_primos[]=1,2,3,5,7,11,13,17,19,23; for (int elemento : primeros_primos) System.out.println(elemento); Bucle while Este bucle no tiene predeterminado un número fijo de iteraciones La duración del bucle viene determinada por la evaluación de una condición. Mientras la condición sea cierta se sigue ejecutando el bucle. Cuidado con los bucles infinitos (la condición nunca se hace falsa) 17

Bucle while while (condición) instrucción; i=0; while (i<257) i++; i=0; while ((i++)<257) System.out.println(i); while (condición) instrucciones; i=0; while (i<257) i++; System.out.println(i); Bucle do-while Es igual que while, pero la condición se comprueba al final, por lo que las instrucciones del bucle se ejecutan al menos una vez do instrucciones; while (condición); // no olvidar el punto y coma 18

break Sirve para finalizar las ramas case dentro de un switch También se usa para salir de un bucle while o do-while Este último uso no es muy limpio. Hay formas más elegantes de salir de un bucle (y que funcionan en todos los lenguajes de programación) continue Sirve para terminar la iteración actual de un bucle sin ejecutar todas las instrucciones No fuerza la salida del bucle, sino que se ejecuta la siguiente iteración Su uso tampoco es demasiado elegante 19