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( )
{
}
}