miércoles, 20 de enero de 2016

Examen Karla Rebeca Martinez Gutierrez, Francisco Aldair Garcia Fuentes

Examen de Programcion by Francisco Garcia Fuentes


UNIVERSIDAD POLITÉCNICA DEL VALLE DE TOLUCA

NOMBRE DEL PROGRAMA EDUCATIVO:
INGENIERÍA INFORMÁTICA

NOMBRE DEL ASIGNATURA:
PROGRAMACION ORIENTADA A OBJETOS

NOMBRE DE LA PRÁCTICA:
PROGRAMA QUE IMPLEMENTA INTERFACES

NOMBRE DE LA UNIDAD DE APRENDIZAJE:
UNIDAD 3: INTERFACES

FACILITADOR:
ING. LETICIA JAEL ROJAS ORTIZ
INTEGRANTES:
No
Matrícula
Nombre
Firma
1
1314INI315
BANDERA MORAN ROSARIO GUADALUPE



ENERO, 2016
Número de Práctica:
1
Duración (horas)
2
Laboratorio de:
COMPUTACION
Resultado de Aprendizaje:
Al completar la unidad de aprendizaje el alumno será capaz de:
Elaborar programas que hagan uso de interfaces
Justificación:
Las interfaces son las que nos permiten crear clases abstractas cuyas características es que en todos los métodos deben ser abstractos y todos sus atributos deben ser constantes, las interfaces nos permiten simular la multi herencia y nos ayuda a definir roles.
Marco Teórico:
Interfaces
Una interfaz en Java es una colección de métodos abstractos y propiedades.
En las interfaces se especifica qué se debe hacer pero no su implementación. Serán las clases que implementen estas interfaces las que describan la lógica del comportamiento de los métodos.

La principal diferencia entre interface y abstract es que un interface proporciona un mecanismo de encapsulación de los protocolos de los métodos sin forzar al usuario a utilizar la herencia.
USOS
Java proporciona dos palabras reservadas para trabajar con interfaces: interface e implrments.
Para declarar una interfaz se utiliza:
    modificador_acceso interface NombreInterfaz {
        ....
    }

VENTAJAS
El uso de las interfaces Java proporciona las siguientes ventajas:

·         Organizar la programación.
·         Obligar a que ciertas clases utilicen los mismos métodos (nombres y parámetros).
·         Establecer relaciones entre clases que no estén relacionadas.
Interface: parte visible y pública de una clase que describe qué hace y cómo usarla. La documentación de una clase en el API de Java vendría siendo su interface.
QUE SON
a) Interface: parte visible y pública de un método que describe qué hace y cómo usarlo (signatura del método + instrucciones de uso). La documentación de un método en el API de Java vendría siendo su interface.

b) Interfaz Gráfica de Usuario, interfaz de usuario o GUI (Graphical User Interface): es el entorno de objetos gráficos disponibles para un usuario en el marco de una aplicación o sistema operativo. El sistema operativo MS-Dos se basaba en intérpretes de comando (escritura de instrucciones por consola) pero Windows se basa en una interfaz gráfica de usuario (su entorno de escritorio), Linux en otra y Macintosh en otra.

c) Herramientas para crear Interfaces gráficas de usuario en Java. Hacemos referencia principalmente a los paquetes (packages) del API de Java swing y awt (Abstract Windowing Toolkit). Las clases de estos paquetes permiten crear interfaces gráficas de usuario basadas en ventanas estilo “Windows” para nuestras aplicaciones.

d) Interfaces de Java: son unas entidades abstractas conceptualmente por encima de las clases cuyo concepto vamos a introducir a continuación.
Material, equipo y/o reactivos:
Computadora, JDK, netbeans
Desarrollo de la Práctica:
1.      Instrucciones: Escriba un programa para una biblioteca que contenga libros y revistas.
a.      Las características comunes que se almacenan tanto para las revistas como para los libros son el código, el título y el año de publicación. Estas tres características se pasan por parámetro en el momento de crear los objetos.
b.      Los libros tienen además un atributo prestado. Los libros cuando se crean no están prestados.
c.   Las revistas tienen un número. En el momento de crear las revistas se pasa el número por parámetro.
d.      Las clases Libro y Revista se derivan de una clase Publicación.
e.      Se incluyen todos los métodos set/get.
f.        Se tiene que implementar la interfaz prestable que contiene los métodos prestar, devolver y prestado. La clase Libro implementa la interfaz.
g.       En la clase principal se debe instanciar un arreglo de publicaciones (Libro y Revista) y debe permitir al usuario agregar una nueva publicación, prestar y devolver los libros, así como consultar todas las publicaciones almacenadas en el arreglo.
package ExamenU3;

import ExamenU3.Clase3.Prestar;

/**
 *
 * @author Rosario
 */
public class Bliblioteca {
    public class Libro extends Clase2 implements Prestar {
private String prestado = "";
public Libro (int codigo, String titulo, int año) {
                super (codigo, titulo, año);
}

public String getPrestado () {
                return prestado;
}
public void setPrestado (String prestado) {
                this.prestado = prestado;
}
       
        public void prestado() {
                System.out.println (prestado );
}
}
package ExamenU3;

/**
 *
 * @author Rosario
 */
public class Clase2 {
int codigo;
String titulo;
int año;
public Clase2 (int codigo, String titulo, int año) {
                this.codigo = codigo;
                this.titulo = titulo;
                this.año = año;
}

public int getCodigo() {
                return codigo;
}

public void setCodigo(int codigo) {
                this.codigo = codigo;
}

public String getTitulo() {
                return titulo;
}

public void setTitulo(String titulo) {
                this.titulo = titulo;
}

public int getAño() {
                return año;
}

public void setAño(int año) {
                this.año = año;
}
}
package ExamenU3;

/**
 *
 * @author Rosario
 */
public class Libro {

    Libro(int i, String el_principe_y_el_mendigo, int i0) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    void consulta() {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    void prestar() {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    void prestado() {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

    void devolver() {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }
    public class Revista extends Clase2 {
private int num;
public Revista (int codigo, String titulo, int año, int num) {
                super (codigo, titulo, año);
                this.num = num;
}

public int getNum() {
                return num;
}
Resultados y observaciones
  
Conclusiones y/o recomendaciones
Las interfaces nos permiten definir las acciones de las subCalses permitiéndonos asignar diferentes tareas y de esta manera definirlas acciones dentro de un método, también nos permite simular la multi herencia, pero debemos recordar que todos los atributos deben ser constantes y que los métodos declarados deben ser abstractos.
Referencias bibliográficas y/o Fuentes consultadas
JAVA 2 INTERFACES GRAFICAS Y APLICACIONES PARA WEB 2° EDICION  ED ALFA OMEGA
Manejo y Disposición de Desechos:
Na
Grupo:

Equipo:

Calificación: