jueves, 29 de octubre de 2015

EXAMEN PARCIAL INTERNADO

PRIMER EXAMEN PARCIAL INTERNADO 

public abstract class InternadoPersona {
    String nombre;
    String Apellido;
    String numCuartos;

    public InternadoPersona() {
    }

    public InternadoPersona(String nombre, String Apellido, String numCuartos) {
        this.nombre = nombre;
        this.Apellido = Apellido;
        this.numCuartos = numCuartos;
    }
    

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getApellido() {
        return Apellido;
    }

    public void setApellido(String Apellido) {
        this.Apellido = Apellido;
    }

    public String getNumCuartos() {
        return numCuartos;
    }

    public void setNumCuartos(String numCuartos) {
        this.numCuartos = numCuartos;
    }
    
}
 
nueva clase

public final class InternadoAlumno extends InternadoPersona {

    private String pabellon;

    public InternadoAlumno() {
        this.ingresarDatos();
        this.mostrarDatos();
    }

    public void ingresarDatos() {
        Scanner sc = new Scanner(System.in);
        System.out.println("ingresa nombre del pabellon");
        pabellon = sc.next();
        System.out.println("ingrese nombre del alumno");
        nombre = sc.next();
        System.out.println("ingrese el apellido de la alumno");
        Apellido = sc.next();
        System.out.println("ingrese el numero de cuarto");
        numCuartos = sc.next();

    }

    public void mostrarDatos() {
        System.out.println("nombre: " + this.getNombre());
        System.out.println("apellidos: " + this.getApellido());
        System.out.println(" Numero de cuarto " + this.getNumCuartos());
    }
}

nueva clase

public final class Cuartos extends InternadoPersona {

    int cantCuarto;

    public Cuartos() {
        this.ingresarDAto();
        this.mostrarDato();
    }

    public void ingresarDAto() {
        Scanner sc = new Scanner(System.in);
        System.out.println("ingresa nombre: ");
        nombre=sc.next();
        System.out.println("ingresar apellido");
        Apellido=sc.next();
        
    }

    public void mostrarDato() {
        System.out.println("nombre: "+this.nombre);
        System.out.println("apellido: "+this.Apellido);
        System.out.println("numero de cuarto"+this.numCuartos);
       

    }
}


nueva clase


public final class Pabellones extends InternadoPersona {
    String nombrePabellon;

    public Pabellones() {
        this.ingresarDato();
        this.mostrarDato();
    }

  
    public  void ingresarDato (){
        Scanner sc=new Scanner(System.in);
        System.out.println("ingresar nombre;");
        nombre=sc.next();
        System.out.println("ingresa apellido");
        Apellido=sc.next();
        System.out.println("ingrese numero de cuarto");
        numCuartos=sc.next();
    }
    public void mostrarDato(){
        System.out.println("nombre: "+this.nombre);
        System.out.println("apellido: "+this.Apellido);
        System.out.println("numero de cuato: "+this.numCuartos);
    }
}

clase principal

import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;


public class MainInternado {

    InternadoAlumno aa = new InternadoAlumno();
    Pabellones p = new Pabellones();

    public void Mennu() {
        int opc = 0;
        Scanner sp = new Scanner(System.in);
        do {
            System.out.println("****************************************");

            System.out.println("(1) Ingresar                            ");
            System.out.println("(2) Mostrar                             ");
            System.out.println("(3) Salir                               ");
            System.out.println("****************************************");
            System.out.println("Elija una opcion: ");
            opc = sp.nextInt();

            switch (opc) {
                case 1:
                    System.out.println("nombre del pabellon");
                    String pabellon = sp.next();
                    System.out.println("imgresa nombre del alumno");
                    String nombre = sp.next();
                    System.out.println("imgrese apellido del alumno");
                    String apellido = sp.next();
                    System.out.println("ingrese dni del alumno");
                    String dni = sp.next();

                    break;

                case 2:
                    System.out.println("mostrar");
                    aa.mostrarDatos();
                    break;
            }
        } while (opc != 3);
    }

    public static void main(String[] args) {
        InternadoAlumno aa = new InternadoAlumno();
        Pabellones p = new Pabellones();

        ArrayList lista = new ArrayList();

        ingresar(lista);
        mostrar(lista);

    }

    static void ingresar(ArrayList lista) {
       
        System.out.println("LSTA DE INTERNADOS");
        lista.add("Maria Angola");
        lista.add("elefantes");
        lista.add("Sheraton");
    }

    static void mostrar(ArrayList lista) {
        Iterator i = lista.iterator();
        while (i.hasNext()) {
            System.out.println(i.next());
        }
    }

}





martes, 27 de octubre de 2015

EXAMEN PARCIAL CARPINTERIA

 Primero creo mi clase Carpintería



package carpinteria;

public abstract class Carpinteriaa {

    String nombre_carpinteria;
    String maderas_que_vende;

    public Carpinteriaa() {

    }

    public Carpinteriaa(String nc, String m) {
        this.nombre_carpinteria = nc;
        this.maderas_que_vende = m;
    }

    public String getNombre_carpinteria() {
        return nombre_carpinteria;
    }

    public void setNombre_carpinteria(String nombre_carpinteria) {
        this.nombre_carpinteria = nombre_carpinteria;
    }

    public String getMaderas_que_vende() {
        return maderas_que_vende;
    }

    public void setMaderas_que_vende(String maderas_que_vende) {
        this.maderas_que_vende = maderas_que_vende;
    }

    public void horarios_de_atencion() {
        System.out.println("Los horarios de atencion son:");
        System.out.println("En las mañanas ");
        System.out.println("En las tardes son:");
    }

    abstract void saludo();

    abstract void mostrar();

}

Luego mi creare una  clase Persona quien heredara una carpintería


package carpinteria;

import java.util.Scanner;

public class Persona extends Carpinteriaa {

    public Persona() {

    }

    //atributos heredados

    public Persona(String nc, String m) {
        super(nc, m);
    }

    //sobre carga

    public String materiales_carpinteria(String silla) {
        System.out.println("Sillas");
        return silla;
    }

    public String materiales_carpinteria(String sillas, String mesas) {
        System.out.println("Sillas y mesas");
        return sillas + mesas;

    }

    public String materiales_carpinteria(String sillas, String mesas, String carpetas) {
        System.out.println("Sillas ,mesas y carpetas");
        return sillas + mesas + carpetas;
    }

    //sobre escritura 
    //le aumento los datos a y b para las horas de atencion

    public void horarios_de_atencion(int a, int b) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Los horarios de atencion son:");
        System.out.println("En las mañanas");
        System.out.println("De:");
        a = sc.nextInt();
        System.out.println("A");
        b = sc.nextInt();
        System.out.println("En las tardes son:");
        System.out.println("De:");
        a = sc.nextInt();
        System.out.println("A:");
        b = sc.nextInt();

    }

    //metodo abstracto

    void saludo() {
        System.out.println("Bienvenidos a la Carpinteria:" + " " + this.nombre_carpinteria);
    }
    //metodo abstracto

    void mostrar() {
        System.out.println("EL nombre de la tienda:" + " " + this.nombre_carpinteria);
        System.out.println("Lo que mas vende la carpinteria es:" + " " + this.maderas_que_vende);

    }

}



Y por ultimo creare mi Tienda_Principal donde instanciare mi clase 

package carpinteria;

import java.util.ArrayList;
import java.util.Scanner;


public class Tienda_Principal1 {
    public static void main(String[] args) {
        //variables polimorficas
        ArrayList maderas;
        maderas=new ArrayList();
      
        Persona p=new Persona("LA CASA DE MADERAS ","sillas");
        p.saludo();
        System.out.println("La Carpinteria contiene:");
        p.materiales_carpinteria("*sillas");
        p.materiales_carpinteria("*sillas", "Mesas");
        p.materiales_carpinteria("*sillas", "Mesas","Carpetas");
        System.out.println("La carpinteria te ofrecen muebles de las maderas:");
        maderas.add("*Tornillo");
        maderas.add("*Cedros");
        maderas.add("*Caoba");
        maderas.add("*Madera");
        for (int i = 0; i < maderas.size(); i++) {
            System.out.println(""+maderas.get(i));
            
        }
       
        p.mostrar();
    
        p.horarios_de_atencion(2,3);
         System.out.println("Esperamos su visita");
    }
   
}





INTERFACES I



En Java una interface es una clase abstracta pura, es decir una clase donde todos los métodos son abstractos (no se implementa ninguno). Permite al diseñador de clases establecer la forma de una clase (nombres de métodos, listas de argumentos y tipos de retorno). Una interface puede  también contener datos miembro, pero estos son siempre static y final. Una interface sirve para establecer un 'protocolo' entre clases.  Para crear una interface, se utiliza la palabra clave interface enlugar de class. La interface puede definirse public o sin modificador de acceso, y tiene el mismo significado que para las clases. Todos los métodos que declara una interface son siempre
public.  
Para indicar que una clase implementa los métodos de una interface se utiliza la palabra clave implements. El compilador se encargará de verificar que la clase efectivamente declare e implemente todos los métodos de la interface. Una clase puede implementar más de una interface. 

Una interfaz en Java es una colección de métodos abstractos y  propiedades. En ellas 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.

EJEMPLO INTERFACES

public class Persona implements Comparable {

    public int dni, edad;

    public Persona(int d, int e) {
        this.dni = d;
        this.edad = e;
    }
    public int compareTo(Persona o) {
        int resultado = 0;
        if (this.edad < o.edad) {
            resultado = -1;

        } else {
            if (this.edad > o.edad) {
                resultado = 1;

            } else {
                if (this.dni < o.dni) {
                    resultado = -1;

                } else {
                    if (this.dni > o.dni) {
                        resultado = 1;

                    } else {
                        resultado = 0;
                    }
                }
            return resultado;
            }
            
        }
        return 0;
    }
}

MAIN PERSONA

public class MainPersona {

    
    public static void main(String[] args) {
        Persona p1=new Persona(47628559, 35);
        Persona p2=new Persona(26538649, 30);
        if (p1.compareTo(p2)<0) {
            System.out.println("LA PRIMERA PERSONA ES MENOR");
            
        }else{
            if (p2.compareTo(p2)>0) {
                System.out.println("LA PRIMERA PERSONA ES MAYOR");
                
            }else{
                System.out.println("LA  PRIMERA PERSONA ES IGUAL A LA SEGUNDA PERSONA");
            }
        }
    }
    
}

Ventajas

 El uso de interfaces 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.

 Declaración 

 Para declarar una interfaz se utiliza la sentencia interface, de la misma manera que se usa la sentencia class:

VARIABLES POLIMORFICAS

VARIABLES POLIMORFICAS

En Java las palabras que contienen objetos son variables polimorficas .En Java, una variable polimórfica es una variable que contiene un objeto y se refiere al hecho de que una misma variable puede contener objetos de diferentes tipos del tipo declarado o de cualquier subtipo del tipo declarado por eso se llama polimórfica que literalmente significa: muchas formas.


  • ArrayList 

Un arrayList declarado así puede contener objetos de cualquier tipo.
De forma general un ArrayList en Java se crea de la siguiente forma:
ArrayList nombreArray = new ArrayList();

Ejemplo:





  • LinkedList
Es una lista enlazada de Recipientes (nodos) donde cada uno contiene elementos (objetos, otras listas, etc) y uno o dos punteros hacia posiciones de memoria que apuntan al anterior o siguiente nodo.
Útil cuando se quiere insertar o eliminar elementos al principio o al final de la lista. A diferencia del ArrayList ,no permite acceder a un elemento en concreto de la lista directamente sin recorrer antes los anteriores.
Ejemplo:

POLIMORFISMO I

POLIMORFISMO

El polimorfismo en una característica y un de los cuatro pilares junto con abstracción,encapsulamiento y herencia de la POO .
Se refiere hacer los mismo pero en distintas clases ,para entender mejor un breve ejemplo.

Ejemplo:

Nos creamos una clase Animal


Luego una clase León que heredara la clase Animal y donde veremos que tiene el mismo método de la clase animal pero en su propia clase


Luego aremos una clase Vaca que heredara Animal y donde veremos que tiene el mismo método de la clase animal pero en su propia clase


Luego nos crearemos nuestra clase Animal_Principal para que nos corra los métodos


GESTIÓN DE EXPRESIONES EN JAVA

GESTIÓN DE EXCEPCIONES EN JAVA

Puede producirse errores en tiempo de ejecución de un programa y por tanto Java necesita de un conjunto de palabras nuevas para tener en cuenta que cualquier código puede fallar o ser mal interpretado en tiempo de ejecución.
Vamos a ver dos de las palabras reservadas para tratamiento de excepciones:
  • Try
  • Catch

BLOQUE TRY

Try en inglés es el verbo intentar, así que todo el código que vaya dentro de esta sentencia será el código sobre el que se intentará capturar el error si se produce y una vez capturado hacer algo con él. Lo ideal es que no ocurra un error, pero en caso de que ocurra un bloque try nos permite estar preparados para capturarlo y tratarlo. Así un ejemplo sería:

try {
     System.out.println(“bloque de código donde pudiera saltar un error es este”);
       }

 BLOQUE CATCH

En este bloque definimos el conjunto de instrucciones necesarias o de tratamiento del problema capturado con el bloque try anterior. Es decir, cuando se produce un error o excepción en el código que se encuentra dentro de un bloque try, pasamos directamente a ejecutar el conjunto de sentencias que tengamos en el bloque catch. Esto no es exactamente así pero ya explicaremos más adelante todo el funcionamiento. De momento para una mejor comprensión vamos a considerar que esto es así.


catch (Exception e) {
     System.out.println(“acá se pone el mensaje de error”);
}

 Ejemplo:










martes, 13 de octubre de 2015

HERENCIA I


HERENCIA EN PROGRAMACIÓN ORIENTADA A OBJETOS


La herencia consiste en hacer uso de los atributos o métodos de una clase dentro de otra como si le perteneciera a este mismo. Esto se podría dar en un caso muy exclusivo para poder ahorrar proceso y código a implementar.

Por ejemplo podría ser para una serie de empleados que ocupen diferentes cargos pero tienen atributos en común como el nombre, apellido, DNI, etc.

Lo cual sería conveniente usar la herencia juntando los datos en común en una misma clase y distribuir clases independientes para los demás datos de los empleados.

Por ejemplo en este esquema se muestra la clase padre que vendría ser Vehículo.



La Herencia es el mecanismo por el que se crean nuevos objetos definidos en términos de objetos ya existentes. Por ejemplo, si se tiene la clase Comida, se puede crear la subclase Juane, que es una especialización de Comida.

La palabra reservada extends se usa para generar una subclase (especialización) de un objeto. Una Juane es una subclase de Comida.

Cualquier cosa que contenga la definición de Comida será copiada a la clase Juane, además, en Juane se pueden definir sus propios métodos y variables de instancia. Se dice que Juane deriva o hereda de Comida.

Para ello realice un ejemplo:

Entonces para entender este caso primero crearemos una clase la cual heredaremos donde se encuentre el apellido y después otra clase donde asignemos el nombre de una persona.





Una vez hecho la primera clase del cual heredaremos, bueno en esta clase crearemos el nombre de la persona.





Como punto final en nuestra función principal, pasamos a usar la clase instanciando en nuestro main.





Para ello Instanciamos la Clase “Herencia” pasándole a su constructor el apellido de la persona lo cual internamente lo pasará a la clase superior “ClaseHeredada”.

luego le asignamos el nombre haciendo uso de su método setPersona y lo imprimimos mediante getPersona

Entonces finalizado esto se imprimirá:  Vladimir Chipana Ramos

Porque lo que hicimos fue juntar el nombre y el apellido utilizando herencia.



para entender mejor sobre herencia pueden visualizar este vídeo visiten a:

https://www.youtube.com/watch?v=LcrCsCuWW7g

aqui tenemos  un poco mas sobre lo que es herencia en POO: