clase1 javaii

49
Introduccion Lenguaje de Programación II Java Ing.Sally Torres

Upload: ricardo-arana-reyes-guerrero

Post on 11-Jul-2015

1.066 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Clase1 javaii

Introduccion

Lenguaje de Programación IIJavaIng.Sally Torres

Page 2: Clase1 javaii

•Introducción al cursoIntroducción al curso•SumillaSumilla•ObjetivosObjetivos•contenido de sesionescontenido de sesiones•BibliografiaBibliografia

AGENDAAGENDA

Page 3: Clase1 javaii

Esta asignatura de formación profesional especializada se orienta a la programación en entornos visuales con el paradigma orientado objetos. Tiene el propósito de estudiar y aplicar la Programación Orientada a objetos usando el lenguaje Java: conceptos, estructuras y técnicas de la programación orientada a objetos.

SumillaSumilla

Page 4: Clase1 javaii

3.1. GENERALESLograr que el alumno adquiera conocimientos sobre las características de la programación orientada a objetos y además aprenda las características del lenguaje java como parte de la implementación de los conceptos esbozados en el curso.3.2. ESPECÍFICOSDiferenciar las técnicas de programación estructurada y programación orientada a objetos.Brindar los conocimientos para la programación interactiva con interfaces gráficas.Estudiar la programación guiada por eventos.Introducir el concepto de usabilidad y del diseño de interfases gráficas de usuario.

ObjetivosObjetivos

Page 5: Clase1 javaii

Unidades TemáticasUnidades Temáticas

PRIMERA UNIDAD: Programación Orientada a Objetos

Sem. Contenidos Actividades

1

Evolución de las técnicas de programaciónParadigma de la Programación EstructuradaParadigma de la Programación Orientada a ObjetosDiferencias entre programación estructurada y POO.Ventajas y desventajas de la POODefinición de lenguaje JavaCcaracterísticas y ventajasDefinición de Maquina Virtual JavaEntornos de desarrollo (IDE) de Java

Exposición en clase, desarrollo en laboratorio

SEGUNDA UNIDAD: Implementación de Clases Y Objetos

Sem Contenidos Actividades

2 Definición de clase y objetoEstructura de un programa en javaDefinición de referencia

Exposición en clase, desarrollo en laboratorioPractica

3 Definición de mensaje, partes de un mensaje y tipos de mensajes.Constructores y paso de argumentos a métodos.

Exposición en clase, desarrollo en laboratorioPractica

Page 6: Clase1 javaii

Unidades TemáticasUnidades TemáticasTERCERA UNIDAD: Herencia

Sem Contenidos Actividades

4 Arrays como objetos de clases predefinidasInicialización de arraysCreación de una referencia a un arrayTipos de arrays

Exposición en clase, desarrollo en laboratorioPractica

5 Concepto de herenciaRedefinición de métodos heredadosTipos de acceso de los atributosReutilización de código

Exposición en clase, desarrollo en laboratorioPractica

6 Concepto de interface.Declaración y uso de interfacesReferencias a interfacesImplementación de los métodos de las interfaces

Exposición en clase, desarrollo en laboratorioPractica

CUARTA UNIDAD: Polimorfismo

Sem Contenidos Actividades

7 Definición y tipos de polimorfismo Ligadura dinámica y estáticaUso del polimorfismo

Exposición en clase, desarrollo en laboratorioPractica

8 EXAMEN PARCIAL

Page 7: Clase1 javaii

Unidades TemáticasUnidades Temáticas

QUINTA UNIDAD: Clases Abstractas

Sem Contenidos Actividades

9 Concepto de clases abstractasDeclaración e implementación de métodos abstractos.Referencias abstractas, utilidad de las clases abstractas.Diferencia entre una interface y una clase abstract

Exposición en clase, desarrollo en laboratorioPractica

SEXTA UNIDAD: Programación visual y orientada a objetos

Sem Contenidos Actividades

10 Introducción al paradigma de la programación visual.Desarrollo de GUI bajo el modelo de la POO Tipos de componentes swing, sus propiedades y métodos

Exposición en clase, desarrollo en laboratorioPractica

11 El paradigma de la programación por eventosConcepto de eventos y diferencia con la programación secuencial.Modelo de eventos e implementación de manejadores de eventos en java

Exposición en clase, desarrollo en laboratorioPractica

Page 8: Clase1 javaii

Unidades TemáticasUnidades Temáticas

SEXTA UNIDAD: Gestión de errores y manejo de archivos

Sem Contenidos Actividades

12 Concepto de excepcionesLas excepciones como parte de la interfaz de un objeto.Manejo de excepciones con un modelo de objetos.Clasificación de las excepciones y su implementación en java.

Exposición en clase, desarrollo en laboratorioPractica

13 Definición de archivosTipos de archivosImplementación de archivos

Exposición en clase, desarrollo en laboratorioPractica

SEPTIMA UNIDAD: Genericidad

Sem Contenidos Actividades

14 Concepto de clases genéricasHilos , Características de la especificación de clases genéricas, su importancia, utilidad e implementación en java

Exposición en clase, desarrollo en laboratorioPractica

Page 9: Clase1 javaii

Unidades TemáticasUnidades Temáticas

OCTAVA UNIDAD: Persistencia

Sem Contenidos Actividades

15 Definición de persistencia y requisitos mínimosInstancia persistente y transitoria.Su importancia en las aplicaciones, en el guardado y recuperación de datos.Implementación de la persistencia en java(serialización)

Exposición en clase, desarrollo en laboratorioPractica

NOVENA UNIDAD: Applets

Sem

Contenidos Actividades

16 Concepto de appletDiferencia entre un applet y una aplicación javaSu implementación en java e inserción en una pagina web

Exposición en clase, desarrollo en laboratorioPractica

17 Examen final

Page 10: Clase1 javaii

Las clases se desarrollaran en laboratorio con exposición de los temas del curso, así mismo se implementaran programas en java para probar los conceptos vertidos en el curso.

MaterialExposición en clase, uso del software NetBeans bajo licencia GPL. Uso de proyector multimedia para el código desarrollado en clase.

EvaluaciónEvaluación

P.F = [ Σ (Practicas + Trabajos + Intervención Oral ) / n + Examen Parcial + Examen Final ] / 3

MetodologíaMetodología

Page 11: Clase1 javaii

•. Francisco Javier Ceballos, (2000), Java 2 Curso de programación, 2da edición. Edit. Alfaomega.•Deitel, Harvey M. Deitel, Paul J., Como programar en Java, 2da. edición. Editorial Prentice Hall.•Vásquez Paragulla, Victor Balta Alva. Super Java 2.•Joel Carrasco Muñoz. Programación Java 2 con J2SE 1.4. •Javier García de Jalón, José Ignacio Rodríguez, Lñigo Mingo, Aitor Imaz, Alfonso Brazales, Alberto Larzabal, Jesús Calleja, Jon García, (2000), Aprenda Java como si fuera primero, Escuela Superior de Ingenieros, Universidad de Navarra,

BibliografiaBibliografia

Page 12: Clase1 javaii

•http://www.tecnun.es/asignaturas/Informat1/ayudainf/aprendainf/Java/Java2.pdf•Gustavo Guillermo Pérez, Aprendiendo Java y Programación Orientada a Objetos, http://www.compunauta.com/forums/linux/programacion/java/AprendiendoJava.pdf

BibliografiaBibliografia

Page 13: Clase1 javaii

¿Qué es java?

❚ Lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems.

❚ Lenguaje de propósito general, desarrollo de aplicaciones para internet.

❚ Conjunto de Librerías y clases estandarizadas.

Page 14: Clase1 javaii

ventajas

❚ La diferencia fundamental de Java con respecto a los demás lenguajes de programación consiste en que Java está diseñado para facilitar el trabajo en la red.

❚ La gran ventaja de Java es que ha sido diseñado como Orientado a Objetos.

Page 15: Clase1 javaii

Características del Java

Simple y poderoso

Seguro Robusto

Interactivo

Recojode basura

Page 16: Clase1 javaii

Características del Java

❚ Simple y poderoso.- conceptos básicos de POO, paradigma de simplicidad, permite llegar a un nivel lo suficientemente bajo, como para realizar cualquier cosa

❚ Seguro.-Se ejerce un control sobre los programas ejecutables de java.

❚ Robusto.-Verifica el código mientras se escribe y una vez mas antes de ejecutarlo, permite que el programa se comporte de una manera predecible.

❚ Interactivo.-Java tiene características que permiten escribir programas que hacen muchas cosas al instante

Page 17: Clase1 javaii

Características del JavaEntorno rico Arquitectura neutral

Optimo para InternetInterpretado y de alto rendimiento(opcionalmente compilado)

OS/2MacintoshWindows95Windows NTSolarisHP/UXOSFLinix

W W W

Page 18: Clase1 javaii

Arquitectura neutral de Java

(*.java) igual para cada plataforma

uno para cada plataforma(*.class) El mismo para cada plataforma

uno para cada plataforma

Codigo Fuente

Compilador

Java Byte code

Interprete

Windows

95/98

Windows NT

Mac OS Solaris Unix

Page 19: Clase1 javaii

Entorno de uso de javaBeans

Page 20: Clase1 javaii

Inicio de Trabajo

❚ Se deberá crear una carpeta en algun lugar del disco.

❚ Ejemplo f:/clase1❚ Montar el sistema de archivos y seleccionar la

carpeta creada❚ Luego se podra crear Clases o Applets

Page 21: Clase1 javaii

Netbeans

Es un ambiente visual integrado que soporta el ciclo completo de desarrollo de programas java

características:❚ Es 100% compatible con Java.❚ Presenta un ambiente gráfico de dasarrollo

integrado.❚ Maneja multiples proyectos, administra archivos

y controla versiones.❚ Permite conexión con servidores corporativos.

Page 22: Clase1 javaii

Facilidades para compilación, pruebas y control de versiones

Ofrece compilación dinámica e incremental:

cada vez que hay una modificación, solo se compila el elemento actualizado.

Puede actualizarse código mientras este mismo este corriendo.

Puede colocarse versiones a proyectos, paquetes y clases.

Con estas ventanas “”scrapbook” y con la ventana de consola, se tiene un microambiente para pruebas rápidas y verificaciones pequeñas

Page 23: Clase1 javaii

Paquetes las librerías de clases

❚ Es un medio de encapsulamiento de mayor nivel que las clases, que puede contener clases, interfaces y también otros paquetes.

❚ Los paquetes se usan también como un mecanismo para evitar conflictos entre nombres. Se puede tener dos clases con el mismo nombre pero en diferentes paquetes.

Page 24: Clase1 javaii

Paquetes las librerias de clases

❚ El API de java es un grupo de paquetes.❚ Fíicamente un paquete representa un directorio.

Paquetes mas importantes:❙ Java.applet Desarrollo de applets.❙ Java.awt Librerias de clases para manejo de GUIs.❙ Java.io manejo de ingreso y salida❙ java.lang Conjunto fundamental de clases.❙ Java.net soporte para el trabajo en redes.❙ Java.swing soporte para GUI.

Page 25: Clase1 javaii

Facilidades Brindadas por Java

❚ Permite convertir un Web site estático en dinámico e interactivo.

❚ Oportunidad de transformar la web en una plataforma de computo.

❚ Brinda grandes facilidades para el manejo de animaciones y control de imágenes de audio.

❚ Permite incrementar las capacidades de las aplicaciones no solo del lado del cliente sino también del lado de servidor.

Page 26: Clase1 javaii

Malentendidos de Java

❚ Java es una extensión de HTML.❚ Java se convertirá en un LP para todas las

plataformas.❚ Todos los programas de java se ejecutan en

una pagina Web.❚ JavaScript es una versión simple de java.

Page 27: Clase1 javaii

Variables

❚ Una variable es un nombre que contiene un valor que puede cambiar a lo largo del programa.

❚ De acuerdo al tipo de información, dos tipos:❙ Variables de tipos primitivos. Estan definidas mediante el valor

unico.❙ Variables de referencia.Son referencias a nombres de una

información mas compleja.

❚ Desde el punto de vista de su papel en el programa:❙ variable miembro de una clase:se definen en una clase o fuera

de cualquier método. Pueden ser primitivos o de referencia.❘ Variables locales se definen dentro de un método mas en general

dentro de cualquier bloque entre llaves. Se destruyen al finalizar dicho bloque.

Page 28: Clase1 javaii

Nombre de Variables❚ Pueden ser cualquier conjunto de caracteres

alfanuméricos, sin caracteres especiales (, . + - * / )❚ Existen algunas palabras reservadas, las cuales tiene

un significado especial en Java y no pueden ser usadas como variables.

Abstract, boolen, break, case, char, class, continue, default, do, double, else, extends, final, float, for, if implements, import, int, private, public, return, private, static, switch, synchronized, while,etc

Page 29: Clase1 javaii

Tipos de Datos Primitivos

❚ Java, es un lenguaje de programación con tipos y clases estrictas. Esto significa que cada campo y expresión tiene un tipo o una clase y sólo aquellos del mismo tipo o clase son compatibles. En otras palabras, no podemos mezclar cadenas y números, ni podemos mezclar árboles y pájaros.

Page 30: Clase1 javaii

Tipos Primitivos

Java tiene ocho tipos predefinidos conocidos como tipos primitivos.

❚ Tipos numéricos❙ tipos enteros

❘ byte, enteros 8-bits con signo complemento a 2,❘ short, enteros 16-bits con signo complemento a

2❘ int, enteros 32-bits con signo complemento a 2❘ long, enteros 64-bits con signo complemento a 2

Page 31: Clase1 javaii

Tipos Primitivos

❙ Tipos en coma flotante:❘ float, real en coma flotante, 32-bits IEEE 754❘ double, real en coma flotante, 64-bits IEEE 754

❙ Tipos no numéricos❘ char, carácter 16-bits Unicode❘ boolean, tipo lógico, cuyos valores son true

(cierto) y false (falso)

Page 32: Clase1 javaii

Operadores

❚ Igualdad y desigualdad: ==, !=❚ Comparación: <, <=, >, >=❚ Suma y resta unarios: +, -❚ Suma, multiplicación, división y módulo: +, -, *, /, %❚ Incremento y decremento prefijos y posfijos: ++ , --❚ Desplazamiento con signo y sin signo: <<, >>, >>>❚ Negación lógica unaria de bits: ~❚ Lógica de bits: &, |, ^❚ Lógica booleana: &&, ||

Page 33: Clase1 javaii

Expresiones

❚ El operador de división / funciona en: entero y real. Si los dos valores son enteros, ejecuta la división entera; si no, ejecuta la división real. Por ejemplo, el resultado de 1/2 es 0, mientras que el de 1.0/2 es 0.5.

❚ El operador % se llama módulo y encuentra el resto de la división entera.

Page 34: Clase1 javaii

Expresiones

❚ En Java, se aplican las reglas de precedencia normales. Los grupos de precedencia para los operadores aritméticos son:❙ Grupo 0: ( )❙ Grupo 1: ++, --, + (unario), - (unario)❙ Grupo 2: *, /, %❙ Grupo 3: +, -, + (concatenación)

Page 35: Clase1 javaii

Expresiones

❚ Las funciones matemáticas principales se encuentran en el paquete (package) Math, que es una clase predefinida del lenguaje que contiene los métodos adecuados para realizar operaciones trigonométricas, de exponenciación y otras operaciones.

❚ Seno x => Math.sin(x)❚ x2 => Math.pow(x,2)❚ Math.round(6.6) => 7

Page 36: Clase1 javaii

Asignación

❚ Una vez declarada una variable, podemos usar una asignación para darle el valor de una expresión. La instrucción de asignación tiene la forma:variable = expresión;

❚ Ejemplo:❚ pesoAntiguo = 65;❚ pesoNuevo = pesoAntiguo - 5;

Page 37: Clase1 javaii

Asignación

❚ Utilización de operadores:❙ var1 = var2+var3; //asignar a var1 el valor de var2+var3

❙ var1 = var2-ver3; //asignar a var1 el valor de var2 - var3

❙ var1 = var2*ver3; //asignar a var1 el valor de var2 * var3

❙ var1 = var2/ ver3; // asignar a var1 el valor de var2 / var3

❙ var1=var2%ver3; //asignar a var1 el valor de var2%var3

Page 38: Clase1 javaii

Asignación

❚ Asignaciones de incremento decremento:❙ variable++; // añadir uno a variable❙ variable--; // restar uno a variable❙ variable += exp; // añadir exp a variable❙ variable -= exp; // restar exp a variable

Page 39: Clase1 javaii

Declaración de variables

❚ Podemos definir una o más variables de distintos tipos. Se puede inicializar una variable al mismo tiempo que se declara, especificando un valor inicial, o bien podemos optar por que el intérprete le asigne un valor por defecto (inicialización por omisión). Para los tipos numéricos, el valor por omisión es cero.❙ tipo nombre;❙ tipo nombre1, nombre2, nombre3;❙ tipo nombre = valor;

Page 40: Clase1 javaii

Declaración de variables

Ejemplos de declaración de variables son:int entero;

int entero1, entero2, entero3;

int entero = 6;

double doble;

double doble1, doble2, doble3;

double doble = 6.5;

Page 41: Clase1 javaii

Declaración de constantes

static final tipo nombre = valor;

Ejemplo de declaraciones de constantes son:

static final int limiteVelocidad = 120;

static final double pi = 3.1416;

Page 42: Clase1 javaii

Conversiones entre tipos

❚ Las conversiones de tipo se pueden hacer de la siguiente forma:

❘ -Redondear un número double a long usando Math.round

❚ Asignar una variable a otra variable de distinto tipo siempre y cuando el tipo receptor sea de mayor tamaño, lo que significa que podemos asignar:byte => short => int => long => float => double

Page 43: Clase1 javaii

Conversiones entre tipos

Si pasamos de un tipo a otro menor en tamaño, por ejemplo, pasar de double a float, tenemos que hacer una conversión explícita de tipos de la forma:

(tipo)expresion

Por ejemplo:float kilogramos;

double calculo;

kilogramos = (float)(calculo*1.2);

int entero = (int)6.5;

Page 44: Clase1 javaii

Conversiones entre tipos

❚ La conversión de tipos se permite sólo entre tipos numéricos.

❚ No hay ningún recurso en Java para convertir caracteres y booleanos a numéricos y viceversa.

Page 45: Clase1 javaii

Ejemplo N 1salida

class HolaMundo {

public static void main(String[] args) {

System.out.println("Hello World!");

}

}

Page 46: Clase1 javaii

Lenguaje java

class MuestraTextoConstante {

public static void main (String args[]) {

System.out.println ("yo aprobaré");

}

}

Nombre de la clase

Método o función miembro.main es donde empieza la ejecución. Siempre debe ser parte de una clase.

Encapsula la funcionalidad del sistema.

Varaible estática miembro de la clase System

Método del objeto out.Igual que la función printf () de C con el añadido de un cambio de línea (\n) al final.

Indica que el método podrá ser llamado desde cualquier lugar, dentro o fuera de la clase.

Indica que el método no manipula instancias de la clase, por lo que podrá invocarse sin tener que referirse a una instancia en particular.

Indica ningún tipo de dato. El método no retornará valor.

Arreglo de objetos tipo cadena (String) pasados a la clase en tiempo de ejecución

Page 47: Clase1 javaii

Ejemplo N 2Implementación de un applet

import java.applet.*;

import java.awt.*;

public class HolaMundo extends Applet {

public void paint(Graphics g) {

g.drawString("Hello world!", 50, 25);

}

}

Page 48: Clase1 javaii

Ejemplo N 3Modificar código de programa y ejecución

import java.applet.*;

import java.awt.*;

public class Primero extends Applet {

Font font = new Font (“Dialog”, Font, BOLD, 24);

String str = “Mi primer applet”;

int xPos =5;

}

Page 49: Clase1 javaii

Ejemplo N 4Modificar código de programa y ejecución

public static void main(java.lang.String[] args) {

System.out.println(Math.sqrt(1999));

System.out.println(Math.atan(0.75));

}

adicionar el código:

double r=Math.random();

System.out.println(r);

r=Math.random();

System.out.println(r);

System.out.println(Math.random());