Presentación POO
View more presentations from colli03.
package oop; /* *clase base de la mayoria de las clases que se usan en el *proyecto de oop */ public class Comun { //atributos int id; int estado; //constructor public Comun(int valorId, int valorActivado){ id = valorId; estado = valorActivado; System.out.println("Creando objeto con valores definidos por el usuario"); } //constructor vacio public Comun(){ id = 0; estado = 1; System.out.println("Iniciando objeto con valores predefinidos"); } //atributos public int verId(){ System.out.println("Viendo id del objeto"); return id; } public int verEstado(){ System.out.println("Viendo estado del objeto"); return estado; } public void Activar(){ System.out.println("Estado"); estado = 1; }
/* *clase principal del programa, se encarga de coordinar todas las *demas clases del proyecto, hereda de la clase comun */ package oop; public class Sistema extends Comun { //atributos int idContador, modo,tiempoMuestreo,contadorMuestreo; int tiempoPrendido, contadorPrendido, apagar; String[] nombres={"Sistema","Informacion","Graficos", "Comunicador","Usuario"}; //constructor vacio public Sistema(){ super(); tiempoPrendido = -1; //tiempo indefinido tiempoMuestreo = 5000; //cada 5000 iteraciones toma un valor modo = 1; //modo automatico aumentarIdContador(); apagar = 0; //inicialmente el programa esta prendido } //constructor con elementos public Sistema(int prendido, int muestreo, int modo){ super(); tiempoPrendido = prendido; tiempoMuestreo = muestreo; this.modo = modo; aumentarIdContador(); apagar = 0; } //aumenta el valor del contador de muestreo public void aumentarContadorMuestreo(){ if((++contadorMuestreo%tiempoMuestreo)== 0){ System.out.println("******Conectando con el dispositivo*****"); } return ; } //aumenta el valor del contador de prendido public void aumentarContadorPrendido(){ //System.out.println("Entrando a aumentarContadorPrendido"); if(tiempoPrendido == -1){ System.out.println("El tiempo de prendido esta indefinido"); }else{ //el programa va a ser apagado if(++contadorPrendido>= tiempoPrendido){ apagar = 1; System.out.println("Apagando el sistema"); return; }else{ // el programa sigue prendido //contadorPrendido++; //System.out.println("Aumentamos el contador de prendido"); System.out.print("Valor de tiempo prendido -- "); System.out.println(contadorPrendido); } } //System.out.println("Saliendo de aumentarContadorPrendido"); return ; } //metodo que pausa el sistema para que no termine muy pronto public void delay(int repeticion){ int i = 0; //System.out.println("Iniciando delay"); System.out.println("........"); while (i < repeticion){ for(int j=0;j<10000;j++){ } i++; } //System.out.println("Delay finalizado"); return ; } //metodo principal public static void main(String[] args){ System.out.print("--> "); System.out.println("Sistema prendido"); Sistema principal = new Sistema(4,2,1); //mantiene el programa activo mientras no se de la orden de apagar el programa System.out.println("Valores del sistema"); System.out.print("id--"); System.out.print(principal.id); System.out.print(", tiempoPrendido--"); System.out.print(principal.tiempoPrendido); System.out.print(", tiempoMuestreo--"); System.out.print(principal.tiempoMuestreo); System.out.println(""); while (principal.apagar != 1){ principal.delay(100000); principal.aumentarContadorMuestreo(); principal.aumentarContadorPrendido(); } System.out.print("--> "); System.out.println("Systema apagado"); } //fin del programa }La implementación del código da como resultado:
// /** * Class elemento */ public class elemento { // // Fields // public boolean activo; /** * Clase principal del sistema * */ public String nombre; // // Constructors // public elemento () { }; // // Methods // // // Accessor methods // /** * Set the value of activo * @param newVar the new value of activo */ public void setActivo ( boolean newVar ) { activo = newVar; } /** * Get the value of activo * @return the value of activo */ public boolean getActivo ( ) { return activo; } /** * Set the value of nombre * Clase principal del sistema * * @param newVar the new value of nombre */ public void setNombre ( String newVar ) { nombre = newVar; } /** * Get the value of nombre * Clase principal del sistema * * @return the value of nombre */ public String getNombre ( ) { return nombre; } // // Other methods // /** */ public void apagarElemento( ) { } /** */ public void prenderElemento( ) { } }