clase1

10

Click here to load reader

Transcript of clase1

Page 1: clase1

Clase N.1 Entorno de desarrollo típico de Java Maritzol Tenemaza

Page 2: clase1

Ingeniería de Sistemas pag:2

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

Clase1

Código: ISI216 Programación II G1

Java:

Eclipse (herramienta IBM) es una plataforma de desarrollo integrado (IDE), abierto y

extensible, para cualquier cosa y nada en particular.

La característica clave de Eclipse es la extensibilidad. Eclipse es una gran estructura

formada por un núcleo y muchos plug-ins que van conformando la funcionalidad final.

La forma en que los plug-ins interactúan es mediante interfaces o puntos de extensión;

así, las nuevas aportaciones se integran sin dificultad ni conflictos

Programación Orientada a Objetos

Introducción:

Fundamentos del Entorno típico en Java

Java es un lenguaje portable y pueden utilizarse en muchas computadoras distintas,

Los programas java pasan a través de 5 fases para poder ejecutarse: Edición,

compilación, carga verificación y ejecución.

Todas las declaraciones de clases de Java se guardan en archivos que terminan

con la extensión .java

Editor

Compilador

Cargador de

clases

Verificador

de código de

bytes

Intérprete

Se escribe el programa en

el editor, y se almacena en disco con la

terminación. java

El compilador crea los códigos de bytes y los

almacena en disco con

extensión .class

El cargador lee los

archivos tipo class (que contiene código de bytes

del disco)y los coloca en

la memoria

El verificador de código

confirma que todos los códigos sean válidos y no

violen las restricciones de

seguridad del java

El intérprete lee

el código de bytes y los

traduce en código

binario, analiza y ejecuta el

programa.

Memoria principal

Page 3: clase1

Ingeniería de Sistemas pag:3

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

Los programas en Java se presentan en muchas variantes: APPLETS,

SERVLETS Y APLICACIONES

Comentarios con /* y */ o //

Se sugiere que todo programa comience con un comentario en el que se explique

el propósito, el autor, la fecha y la hora de su creación.

Todo programa java, consiste de al menos una declaración de clase que usted el

programador, debe definir. Estas clases se conocen como clases definidas por el

programador o clases definidas por el usuario.

Nombres de clase

Por convención los nombres de clases comienzan con mayúsculas ejemplo

EmpleadoAsalariado.

Su nombre puede contener letras, dígitos, guiones bajos(_) signos de moneda.

No puede comenzar por dígito ni tener espacios.

Al nombre de una clase se conoce como identificador.

Java es sensible a mayúsculas y minúsculas.

Es un error que una clase tenga dos o más clases public.

Toda clase public debe guardarse en un archivo del mismo nombre, con la

extensión .java.

System.out objeto de salida estándar

public class MyApplication {

public static void main(String[]args){

System.out.print("Bienvenido a ");// no salta la línea al final

System.out.println("Bienvenido a la programación en Java"); // salta línea

al final

System.out.println("Bienvenidos\n a la programación\n en Java"); //usa

saltos de línea intermedios

}

El Sistema Operativo comienza llamando al método main de la clase de la aplicación.

Las aplicaciones pueden consistir de una o más clases, una de estas clases debe tener un

método Main.

El método Main tiene la forma public static void main (String[] args)

La clase que contiene el método main debe ser public.

Una clase puede o no tener una cláusula extend (herencia)

Secuencias de Escape

\n Nueva línea, coloca el cursor de la pantalla en el inicio de la siguiente línea

\t Tabulador horizontal.

\r Retorno de carro coloca el cursor en el inicio de la línea actual.

\\ Barra diagonal Inversa. Usa para imprimir un carácter de barra diagonal Inversa

\” Doble comilla, usa para imprimir un carácter de doble comilla

API de Java

Page 4: clase1

Ingeniería de Sistemas pag:4

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

API o Interfaz de programación de Aplicaciones de Java o Application Programming

Interface o biblioteca de clases de Java Es una Liberia de Java extensiva, son escritas

cuidadosamente, son robustas y están probadas.

Paquete es una colección de clases relacionadas. Uno de los puntos más fuertes es el

extenso número de clases en los paquetes de la API de Java. Los paquetes de API de

Java se dividen:

Básicos comienzan con java

Opcionales comienzan con javax

Paquetes y el estatuto import

import permite importar una clase o un paquete Ejm.

import java.util.GregorianCalendar; estaría importando la clase

import java.util.*; estaria importando el paquete

El asterisco es un comodín es más rápido escribir y no incurre en ninguna sobrecarga

no disminuye la velocidad de compilación o ejecución ni incrementa el tamaño del

código en bytes.

El paquete que se importa por defecto es java.lang.*

import javax.swing.JOptionPane;

public class MyApplication2 {

public static void main(String[] args) {

JOptionPane.showMessageDialog(null,"Bienvenido\n a \n la programación \n en

java");

// tomar la primera opción de Show message. null especifica despliegue del cuadro de

diálogo en la mitad de la pantalla System.exit(0);

}

}

Aplicación Suma de Enteros Uso de Cuadro de Diálogo de entrada

Pertenece a la clase JOption pane

Page 5: clase1

Ingeniería de Sistemas pag:5

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

import javax.swing.JOptionPane;

public class Suma {

public static void main(String[] args) {

String PrimerNúmero;

String SegundoNúmero;

int número1,número2,suma;

PrimerNúmero=JOptionPane.showInputDialog("Escriba el primer

Entero");

SegundoNúmero=JOptionPane.showInputDialog("Escriba el segundo

Entero");

número1=Integer.parseInt(PrimerNúmero);

número2=Integer.parseInt(SegundoNúmero);

suma=número1+número2;

JOptionPane.showMessageDialog(null,"La Suma de los números es:" +

suma,"Resultados", JOptionPane.PLAIN_MESSAGE);

// Joptionpane.PLANE_MESSAGe no muestra ningún ícono en el

mensaje

System.exit(0);

}

}

Tipos de cuadro de diálogo de mensaje Descripción

Page 6: clase1

Ingeniería de Sistemas pag:6

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

JOptionPane.ERROR_MESSAGE Muestra en Cuadro de diálogo que muestra

un error al usuario

JOptionPane.INFORMATION_MESSAGE Muestra un cuadro de diálogo con un

mensaje informativo, éste puede

simplemente descartar el cuadro de diálogo

JOptionPane.WARNING_MESSAGE Muestra el cuadro de diálogo que advierte

al usuario de un problema potencial

JOptionPane.QUESTION_MESSAGE Muestra el cuadro de diálogo con un signo

de Interrogación para el usuario.

Generalmente requiere una respuesta..

JOptionPane.PLAIN_MESSAGE Muestra un cuadro de diálogo que

simplemente tiene un mensaje

Aritmética

Operación en Java Operador Aritmético Exp. Algebraica Expresión en Java

Suma + f + 7 f + 7

Resta - f – 7 f - 7

Multiplicación * f p f * p

División / f/p f / p

Residuo % f mod p f % p

Unarios

PreIncremento ++ ++a

postIncremento ++ a++

Predecremento -- --a

Postdecremento -- a--

Precedencia

++,--

*

/

%

*

-

+=, -=, *=, /=

Los paréntesis pueden cambiar la precedencia

Toma de decisiones: Operadores de Igualdad y relacionales

Operador de Igualdad o relacional de Java

= =

¡=

>

<

>=

<=

Se evalúan primero, si hay varias de este tipo de

evalúan de izquierda a derecha

Se evalúan después, si hay varios se evalúan de

izquierda a derecha

Page 7: clase1

Ingeniería de Sistemas pag:7

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

Tipos Primitivos

Tipo tamaño en bits Valores

boolean true o false

char 16 1\u000‟ hasta „\uFFFF‟ de 0 a 65535

byte 8 -128 hasta +127

short 16 -32768 hasta +32767

int 32 -2147483648 hasta +2147483647

long 64 -9223372036854775808 hasta +9223372036854775807

float 32 Rango Negativo:

-3.4028234663852886E+38 hasta -1.40129846432481101e-45

Rango Positivo

140129846432481101e-45 hasta 34028234663852886E+38

double 64

Rango Negativo

-1.7976931348623157E+308 hasta -4.94065645841246544e-324

Rango positivo

4.94065645841246544e-324 hasta1.7976931348623157E+308

Ejercicios: 1. Usando JOptionPane Ingresar tres números y encontrar el mayor y el menor, (Sin

usar condiciones compuestas).

2. Escriba un programa que lea el primer nombre y el apellido del usuario, como dos

entradas separadas y concatene el nombre y el apellido, separándolos con un

espacio, muestre el nombre concatenado en un cuadro de diálogo de mensaje.

.

Clase: UML

Descriptor de un conjunto de objetos que comparten: estructura,

comportamiento y relaciones similares

Concepto del sistema a modelizar

Se representa mediante un rectángulo con hasta tres compartimentos:

o nombre de la case

o lista de atributos (opcional)

o lista de operaciones (opcional)

Page 8: clase1

Ingeniería de Sistemas pag:8

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

Diagrama de clases

Diagrama que contiene “elementos clasificadores” conectados por relaciones

estáticas.

Elementos clasificadores:

o clases

o Tipos de datos

o Interfaces

los distintos diagramas de clases no se corresponden con particiones del sistema

Las relaciones de los diagramas de clases (notación UML) lo revisaremos más adelante.

Clase

Una clase se usa para encapsular datos (atributos), y métodos (comportamientos) de

objetos que comparten los mismos atributos y métodos. El encapsulamiento permite a

Page 9: clase1

Ingeniería de Sistemas pag:9

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

los objetos ocultar su implementación de otros objetos, a este principio se lo conoce

como ocultamiento de información.

El ocultamiento de información es fundamental para la buena ingeniería de software.

Por ejemplo un conductor de un auto requiere como interfaz un volante, un pedal de

acelerador, un pedal de freno y una palanca de velocidades, pero los detalles de

implementación se ocultan dentro de los mismos objetos. Evidentemente es posible

conducir de forma efectiva sin conocer los detalles del funcionamiento de motores,

transmisiones y sistemas de escape, de manera similar es posible seleccionar una

estación de radio de un estéreo sin necesidad de saber como funciona el radio

Constructores

Un constructor inicializa las variables de instancia de una clase:

1. Cuando se crea un objeto de una clase, new llama al constructor de la clase para

llevar a cabo la inicialización.

2. Un constructor debe tener el mismo nombre que el de su clase.(incluyendo las

mismas letras mayúsculas y minúsculas).

3. Un constructor no puede especificar un tipo o valor de retorno.

4. Una clase puede tener constructores sobrecargados, los cuales permiten a los

objetos de esta clase inicializarse de distintas maneras.

5. Cuando un programa crea la instancia de un objeto de cierta clase, el programa

puede proporcionar inicializadores y objetos entre paréntesis.(como

DecimalFormat, JLabel, JTextField, JTextArea y JButton)

6. Toda clase debe tener al menos un constructor.

7. Si no se declara un constructor el compilador crea un constructor

predeterminado que no toma argumentos.

8. Si la clase que es extendida por esta clase no tiene un constructor sin

argumentos, el compilador genera un mensaje de error

Uso de constructores sobrecargados

Los constructores de una clase pueden sobrecargarse.

1. Los constructores sobrecargados permiten a los objetos de una clase

inicializarse de distintas formas.

2. para sobrecargar constructores simplemente hay que proporcionar varias

declaraciones del constructor con distintos parámetros

Alcance de las clases

Los atributos y los métodos de una clase pertenecen al alcance de esa clase.

1. Dentro del alcance de la clase los miembros de esta son accesibles para todos los

métodos de esa clase y pueden referirse por el nombre. (los métodos static son

una excepción a esta regla).

2. Fuera del alcance de una clase lo miembros no pueden referenciarse por su

nombre. Los miembros de una clase (como los miembros public) que sean

visibles pueden utilizarse solo mediante u manejador: una referencia a un

objeto de la clase o el nombre mismo de la clase para los miembros static. Se

puede hacer referencia a los miembros mediante nombre

Page 10: clase1

Ingeniería de Sistemas pag:10

Java fecha:21/02/2011

Ing Maritzol Tenemaza MSc

ReferenciaObjeto.nombreMiembroObjeto. Por ejemplo: Un programa puede

determinar el número de elementos en el arreglo calificaciones accediendo al

miembro public llamado length así: calificaciones.lenght

3. Las variables que se declaran en un método son conocidas solo por este método

( es decir son variables locales) Si un método declara a una variable local con el

mismo nombre que una variable declarada en la clase que encierra a ese

método, el alcance de la clase queda sombreada(oculta) por la variable local .

4. Una variable de instancia oculta puede utilizarse en el método si se antepone

la palabra this.nombreDeVariable

Control de Acceso a los miembros

Los modificadores de acceso public o private controlan el acceso a las variables y

métodos de una clase.

1. El propósito de los métodos public es presentar a los clientes de la clase una

vista de los servicios que la clase proporciona (la interfaz pública de la clase).

los clientes de la clase no necesitan preocuparse acerca de cómo la clase realiza

sus tareas.

2. las variables y métodos private de una clase (es decir los detalles de

implementación de una clase) no son directamente accesibles para los clientes de

una clase.

3. El proceso de restringir el acceso a los miembros de una clase mediante la

palabra private se le conoce como ocultamiento de la información.