Tema 9: Paquetes Antonio J. Sierra. Índice 1. Introducción. 2. Protección de acceso. 3. Importación de paquetes. 4. Modelado UML de un paquete.

Slides:



Advertisements
Presentaciones similares
ESTRUCTURA DE DATOS Unidad 01 Conceptos Previos.
Advertisements

Características Generales y Entornos de Desarrollo
Curso de java básico (scjp)
Curso de java básico (scjp)
Herencia en C#.
Lenguaje de programación Java
Clases Extendidas La clase extendida hereda los campos y métodos de la clase de la cual extiende. La clase original se conoce como superclase y la clase.
UML 1.4 Peter Emerson Pinchao Solis.
Arquitectura CLARO-TECNOTREE
Orientación a Objetos con Java SE
Informática II Prof. Dr. Gustavo Patiño MJ
Herencia y Polimorfismo
1.2 Sintaxis del lenguaje Java.
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
UNIVERSIDAD LATINA (UNILA)
Aplicación del paradigma orientado a objetos
Encapsulamiento y Abstracción
Objetos y Clases en Java
Programación Orientada a Objetos en Java
PROGRAMACIÓN EN JAVA Curso-taller inicial de programación en JAVA Facultad de Estadística e Informática TEMA II.
Lenguaje de Programación II Manejo de Paquetes Corporación Universitaria del Caribe CECAR.
HERENCIA.
La estructura básica de los programas en java, algo a tener en cuenta y que debemos recordar siempre es el archivo debe llevar el nombre de la clase con.
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
Modificadores.
Herencia y Polimorfismo en JAVA
Polimorfismo Lenguajes de Programación II Corporación Universitaria del Caribe CECAR.
Introducción a Java II.
Lic. Rosemary Torrico Bascopé
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.
Creación de Aplicaciones
Tema 6: Clases Antonio J. Sierra.
Tema 10: Interfaces Antonio J. Sierra.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Clase Teórica No. 4 Programación IV
El lenguaje de programación Java
Material de apoyo Unidad 2 Fundamentos de programación
Capitulo # 4 herencia PROGRAMACION III UNIVERSIDAD
Tema 11: Excepciones Antonio J. Sierra.
Clases y objetos. La unidad fundamental del lenguaje Java es la clase, que proporciona la estructura de los objetos y mecanismos para fabricarlos, a partir.
1 Objetos y Clases en Java ELO-329: Diseño y Programación Orientados a Objetos.
UNIDAD VI Recursos esenciales de Java LSC. Natalia Rodríguez Castellón.
Paquetes e interfaces.
Metodología de Programación Ayudantía 5 lelagos.ublog.cl 2009.
Informatica II1 Clases Extendidas La clase extendida hereda los campos y métodos de la clase que ha sido extendida. La clase original se conoce como superclase.
Interfaces y Clases Internas ELO329: Diseño y Programación Orientados a Objetos.
EI, Profesor Ramón Castro Liceaga Agosto de 2005 UNIVERSIDAD LATINA (UNILA) PROGRAMACION ORIENTADA A OBJETOS EN JAVA (Optativa) CONCEPTOS DE PROGRAMACION.
Clases y Objetos en Java ELO329: Diseño y Programación Orientados a Objetos.
Programación Orientada a Objetos
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
IDENTIFICADORES Un identificador es un "nombre" que nos permite dirigirnos específicamente a una de las entidades propias del lenguaje, es decir, son los.
Unidad 2.1: INTRODUCCIÓN A LA ORIENTACIÓN A OBJETOS.
ESMERALDA LIMÓN ESCUTIA AURORA MENDOZA PASTRANA RUTH LÓPEZ muñoz I.S.C
Detalles Generales sobre Java
Clasificación de Diagramas
FUNDAMENTOS DE PROGRAMACION
INSTITUTO TECNOLOGICO DE TEHUACAN Ingeniería en sistemas computacionales Curso de apoyo a la titulación CLASES DE JAVA Diciembre de 2008.
Clases “ Es una Abstracción de un elemento del mundo real ”
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Práctica 3.
Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 4 Versión Diseño de tipos Igualdad, representación, código,
Cómo empezar Java. ¡Cómo se divide la plataforma de desarrollo de Java?  Edición estándar (JSE)  Edición empresarial (JEE)  Edición de dispositivos.
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 I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
ESTRUCTURA DE UN PROGRAMA EN
Arrays, Cadenas y Vectores Tipos Genéricos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 5 Versión
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.
Transcripción de la presentación:

Tema 9: Paquetes Antonio J. Sierra

Índice 1. Introducción. 2. Protección de acceso. 3. Importación de paquetes. 4. Modelado UML de un paquete.

Introducción Justificación –Unicidad en el identificador de la clase. –Asociarlo a un espacio de nombres. –Unicidad en el espacio de nombres. Mecanismo para organizar de forma estructurada las clases. Todas las clases incorporadas en Java se almacenan en paquetes.

Introducción Son contenedores de clases Utilizan el mismo espacio de nombres para dividir compartimentos. Los paquetes son un mecanismo que permiten dar nombres y restringir la visibilidad. Se pueden declarar clases dentro un paquete sin hacerlas accesibles fuera del paquete. Se pueden declarar miembros que sólo están accesibles a otros miembros del mismo paquete.

Partes de un archivo fuente Un archivo fuente de Java puede contener las cuatro partes internas siguientes: 1.Una única sentencia de paquete (opcional). 2.Las sentencias de importación deseadas (opcional). 3.Una única declaración de clase pública (obligatorio). 4.Las clases privadas de paquetes deseadas (opcional).

Definición Creación de un paquete package paq1[.paq2[.paq3]]; Ejemplo package java.awt.Image; Asociado a una estructura de directorios.

Variable de entorno: CLASSPATH La localización específica que el compilador de Java considera como raíz de cualquier jerarquía de paquetes está controlada por CLASSPATH. Hasta ahora, hemos almacenando todas las clases en el mismo paquete por omisión y sin nombre. –Esto nos permitía compilar el código fuente y ejecutar el intérprete de Java sobre el resultado simplemente nombrando la clase en la línea de órdenes. La razón por la cual esto funcionaba es que, por defecto, el directorio de trabajo actual (".") está en la variable de entorno CLASSPATH definida por el intérprete de Java.

Definición Creación de un paquete package paq1[.paq2[.paq3]]; Ejemplo package java.awt.Image; Asociado a una estructura de directorios.

Ejemplo package MiPaq; class Balance { String nombre; double bal; Balance(String n, double b) { nombre = n; bal = b; } void muestra() { if (bal<0) System.out.print("-->> "); System.out.println(nombre + ": $" + bal); } class RecuentoBalance { public static void main(String args [ ]) { Balance actual [ ] = new Balance [ 3 ]; actual [0] = new Balance("K.J. Fielding",123.23); actual [1] = new Balance("Will Tell",157.02); actual [2] = new Balance("Tom Jackson", ); for(int i = 0; i<3; i++) actual [i].muestra(); } /* E:>java MiPaq.RecuentoBalance K.J. Fielding: $ Will Tell: $ >> Tom Jackson: $ */

Protección de acceso Las clases y los paquetes son dos medios de encapsular y contener el espacio de nombres y el ámbito de las variables y métodos. Los paquetes actúan como recipientes de datos y código. La clase es la unidad de abstracción más pequeña de Java. –Un miembro privado de una clase está permitido sólo al resto de miembros de esa clase. Debido a la relación entre clases y paquetes, Java distingue cuatro categorías de visibilidad entre elementos de clase: –Subclase del mismo paquete. –No subclases del mismo paquete. –Subclase en paquetes distintos. –Clases que no están ni en el mismo paquete ni en las subclases.

Protección de acceso private Sin modificador protectedpublic Misma claseSI Subclase del mismo paqueteSI No subclase del mismo paqueteNoSI Subclase de diferente paqueteNo SI No subclase de diferente paqueteNo SI

Importar paquetes No hay ninguna clase del núcleo de Java en el paquete sin nombre. Esto significa que todas las clases estándares están almacenadas en algún paquete con nombre. La sentencia import para que se puedan ver ciertas clases o paquetes enteros. Una vez importada, una clase puede ser referenciada directamente, utilizando sólo su nombre. Sintaxis: import paquete1[.paquete2].(nombre_clase|*);

Importando paquetes No hay ninguna clase del núcleo de Java en. import java.util.Date; import java.io.*; import java.lang.*;

Ejemplo I package p1; public class Proteccion { int n = 1; private int n_pri = 2; protected int n_pro = 3; public int n_pub = 4; public Proteccion() { System.out.println("constructor base "); System.out.println("n = " + n); System.out.println("n_pri = " + n_pri); System.out.println("n_pro = " + n_pro); System.out.println("n_pub = " + n_pub); } class Derivada extends Proteccion { Derivada() { System.out.println("constructor de Derivada "); System.out.println("n = " + n); //solo para su clase //System.out.println("n_pri = " + n_pri); System.out.println("n_pro = " + n_pro); System.out.println("n_pub = " + n_pub); } class MismoPaquete { MismoPaquete() { Proteccion p = new Proteccion(); System.out.println("constructor de MismoPaquete"); System.out.println("n = " + p.n); //solo para su clase //System.out.println("n_pri = " + p.n_pri); System.out.println("n_pro = " + p.n_pro); System.out.println("n_pub = " + p.n_pub); } class Demo{ public static void main(String args[]){ Proteccion ob1 = new Proteccion (); Derivada ob2 = new Derivada (); MismoPaquete ob3 = new MismoPaquete (); }

Salida del Ejemplo I E:\F_Telematica\Tema9>javac.\p1\Proteccion.java E:\F_Telematica\Tema9>java p1.Demo constructor base n = 1 n_pri = 2 n_pro = 3 n_pub = 4 constructor base n = 1 n_pri = 2 n_pro = 3 n_pub = 4 constructor de Derivada n = 1 n_pro = 3 n_pub = 4 constructor base n = 1 n_pri = 2 n_pro = 3 n_pub = 4 constructor de MismoPaquete n = 1 n_pro = 3 n_pub = 4 E:\F_Telematica\Tema9>

Ejemplo II package p2; class Proteccion2 extends p1.Proteccion { Proteccion2() { System.out.println("constructor Proteccion2 "); //solo para su clase o paquete //System.out.println("n = " + n); //solo para su clase //System.out.println("n_pri = " + n_pri); System.out.println("n_pro = " + n_pro); System.out.println("n_pub = " + n_pub); } class OtroPaquete { OtroPaquete() { p1.Proteccion p = new p1.Proteccion(); System.out.println("constructor de OtroPaquete"); //solo para su clase o paquete //System.out.println("n = " + p.n); //solo para su clase //System.out.println("n_pri = " + p.n_pri); //solo para su clase, subclase o paquete //System.out.println("n_pro = " + p.n_pro); System.out.println("n_pub = " + p.n_pub); } class Demo{ public static void main(String args[]) { Proteccion2 ob1 = new Proteccion2(); OtroPaquete ob2 = new OtroPaquete(); } /* E:\F_Telematica\Tema9>javac.\p2\Proteccion2.java E:\F_Telematica\Tema9>java p2.Demo constructor base n = 1 n_pri = 2 n_pro = 3 n_pub = 4 constructor Proteccion2 n_pro = 3 n_pub = 4 constructor base n = 1 n_pri = 2 n_pro = 3 n_pub = 4 constructor de OtroPaquete n_pub = 4 E:\F_Telematica\Tema9> */

Modelado UML de un paquete Son las partes organizativas de los modelos UML. Hay un elemento de agrupación principal, los paquetes. Un paquete es un mecanismo de propósito general para organizar elementos en grupos. Los elementos estructurales, los elementos de comportamiento, e incluso otros elementos de agrupación pueden incluirse en un paquete. Al contrario de los componentes (que existen en tiempo de ejecución), un paquete es puramente conceptual (sólo existe en tiempo de desarrollo).

Representación UML de un paquete Comunicaciones