elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Duda Java: Usando una única clase que actúe como Interfaz de usuario
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda Java: Usando una única clase que actúe como Interfaz de usuario  (Leído 2,656 veces)
llvvrr

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Duda Java: Usando una única clase que actúe como Interfaz de usuario
« en: 29 Septiembre 2011, 19:13 pm »

Hola a tod@s:
Mi pregunta supongo que os resultará muy estúpida, pero soy nueva en el arte de programar y aún no tengo las cosas claras.
Simplemente querría saber si alguien me puede echar una mano con la siguiente cuestión:

Necesito escribir dos clases:
Una que será la única que podrá leer por teclado y escribir en pantalla.(PRINCIPAL.class)
Otra que realizará las operaciones.
(OPERACIONES.class)
Llegados a este punto, mi pregunta es la siguiente:


¿Cómo narices uso los métodos con parámetros de la clase operaciones en Interfaz chic@s???
:-\:-\:-\

Si alguien me puede ayudar escribiendome un peque código de las dos clases, pidiendo algo de información en Interfaz que pueda ver por consola y operando en operaciones.class se lo agradecería infinitamente...
Con un método me bastaría para entenderlo (aunque eso es mucho esperar de mi misma)...
Hasta ahora he aprendido a pedir datos y leerlos en la misma clase...pero por ejemplo no sé pedir un número por teclado en Interfaz que haya pasado como parametro en operaciones...

P.D:espero haberme explicado
Muchas gracias de antemano.
Un saludín.


En línea

Valkyr


Desconectado Desconectado

Mensajes: 646


Divide y vencerás


Ver Perfil
Re: Duda Java: Usando una única clase que actúe como Interfaz de usuario
« Respuesta #1 en: 29 Septiembre 2011, 19:42 pm »

No se si te refieres exactamente a lo que estoy pensando ya que la verdad no me he aclarado mucho con tu explicación.

Sí lo que quieres hacer es leer datos de teclado en una clase (Principal.class) y pasarselo a otra para que esta realice operaciones (Operacioes.class) entonces podrías hacer algo así:

Código
  1. public class Principal {
  2.  
  3.    public static void main(String[] args){
  4.        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  5.        //Con esta instruccion anterior declaras un bufer de lectura con el que podras ir leyendo de teclado linea a linea
  6.        Operaciones operador = new Operaciones();
  7.        String linea;
  8.        while( (linea=br.readLine()) != null){
  9.            int op1 = Integer.parseInt(linea);
  10.            linea = br.readLine();
  11.            int op2 = Integer.parseInt(linea);
  12.            linea = br.readLine();
  13.            if("+".equals(linea))
  14.                System.out.println(El resultado de sumar " + op1 + " a " + op2 + " es: " + operador.sumar(op1, op2));
  15.            else if("-".equals(linea))
  16.                System.out.println("El resultado de restar " + op1 + " a " + op2 + " es: " + operador.restar(op1, op2));
  17.            else
  18.                System.out.println("Operacion desconocida");
  19.        }
  20.    }
  21.  
  22. }

Este sencillo programa reconocería una entrada de este tipo:

Código:
3
4
+
18
2876
+
1242
4
-

realizando las operaciones indicadas, ya tú misma puedes cambiar en que orden lees las cosas y como las tratas. También puedes hacer uso de la clase Scanner, pero la verdad nunca la he usado y prefiero moverme a mi antojo leyendo las cosas y parseandolas a mi gusto.

La clase Operaciones sería algo así:

Código
  1. public class Operaciones{
  2.  
  3.    public int sumar(int operando1, int operando2){
  4.        return operando1+operando2;
  5.    }
  6.  
  7.    public int restar(int operando1, int operando2){
  8.        return operando1-operando2;
  9.    }
  10.  
  11.    //Demas procedimientos...
  12. }

Espero que te sirva.

Saludos.


En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: Duda Java: Usando una única clase que actúe como Interfaz de usuario
« Respuesta #2 en: 30 Septiembre 2011, 06:44 am »

Con herencia

De acuerdo al código de Valkyr también puedes utilizar "extends".

Código
  1. import java.io.BufferedReader;
  2. import java.io.InputStreamReader;
  3.  
  4. public class Principal extends Operaciones{
  5.  
  6.    public static void main(String[] args){
  7.     try{
  8.        String linea;
  9.        while( (linea=br.readLine()) != null){
  10.            int op1 = Integer.parseInt(linea);
  11.            linea = br.readLine();
  12.            int op2 = Integer.parseInt(linea);
  13.            linea = br.readLine();
  14.            if("+".equals(linea))
  15.                System.out.println("El resultado de sumar " + op1 + " a " + op2 + " es: " + sumar(op1, op2));
  16.            else if("-".equals(linea))
  17.                System.out.println("El resultado de restar " + op1 + " a " + op2 + " es: " + restar(op1, op2));
  18.            else
  19.                System.out.println("Operacion desconocida");
  20.        }
  21.     }catch(Exception e){
  22.     System.out.println(e);
  23.     }
  24.  
  25.    }
  26. }
  27.  


Código
  1. public class Operaciones{
  2.  
  3.    public static int sumar(int operando1, int operando2){
  4.        return operando1+operando2;
  5.    }
  6.  
  7.    public static int restar(int operando1, int operando2){
  8.        return operando1-operando2;
  9.    }
  10.  
  11.    //Demas procedimientos...
  12. }
  13.  


No es necesaria una interfaz.
En línea

abc
llvvrr

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Duda Java: Usando una única clase que actúe como Interfaz de usuario
« Respuesta #3 en: 30 Septiembre 2011, 19:11 pm »

Muchas gracias...
 ;-) ;-) ;-)

A ver si me va a gustar ahora programar en java??...Os lo agradezco infinitamente...
Un saludo
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda programacion interfaz grafica JAVA
Java
jpgbps 6 4,806 Último mensaje 13 Abril 2007, 00:54 am
por jpgbps
Clase para interactuar con el usuario mediante interfaz gráfica simple
Java
JmpNull 0 3,716 Último mensaje 17 Agosto 2009, 22:38 pm
por JmpNull
Problema de interacion entre una clase Interfaz y la clase que la llama
Java
yeah69 4 4,189 Último mensaje 21 Mayo 2010, 06:30 am
por we4rt
Ayuda mostrar disco duro remotamente usando clase socke java
Java
lina_margatira 5 5,631 Último mensaje 4 Septiembre 2010, 04:31 am
por lina_margatira
Duda de vectores usando interfaz con java
Programación General
Aldad 0 1,677 Último mensaje 14 Octubre 2016, 01:24 am
por Aldad
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines