Clases de JAVA - main sin llamadas

Tengo que entregar un trabajo para el miércoles acerca de programación de JAVA I. El ejercicio es el siguiente:
Generar un proyecto con 5 clases diferentes.
Cada clase con 5 instancias
Tres instancias devuelven String y 2 instancias devuelven 1 solo carácter (CHAR)
La clase 1 utiliza los datos de la clase 2
La clases 3 utiliza los datos de la clase 4
La clase 5 utiliza los datos de la clase 1 y 3
Que el main principal utiliza solo la clases 5 y no hace ninguna llamada a datos ni ningún calculo. Solo sirve para desplegar los resultados
Este puede ser un juego de geografía, historia, fútbol, etc.
Bueno lo que yo no entiendo es cómo hacer que el main principal no haga llamadas. Puedes ayudarme en esto de urgen por fa porque solo tengo hoy para hacer este deber porque ya mañana trabajo y no tengo tiempo.
Yo estaba tratando de hacer un ejercicio muy simple solo para ver como hago que el main no haga llamadas pero no se como. Aquí te envío el pequeño ejercicio para que me digas que tengo que poner en el main principal para no hacer llamadas.
Main principal
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
 */
package trabajodeprogramaciónfindesemestre;
/**
 *
 * @author Intel
 */
public class Main {
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
     String NOM4;
        op NOM = new op();
        NOM4 = NOM.NO();          (Esto creo es lo que no debe ir xq es una llamada, creo yo debe faltar aqui alguna linea de programación para que vaya directo a la parte de NOM  en la clase op)
    }
}
CLASE op
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
 */
package trabajodeprogramaciónfindesemestre;
import java.io.*;
/**
 *
 * @author Intel
 */
public class op {
     InputStreamReader DATO = new InputStreamReader (System.in);
     BufferedReader DATO1 = new BufferedReader (DATO);
     private String NOM1,NOM3;
public op ()
{
}
public String NO ()
{
    try
    {
    System.out.println ("Ingrese su nombre");
    NOM1 = DATO1.readLine ();
    NOM3=NOM1;
    System.out.println  ("Su nombre es "+NOM1);
    }
    catch (IOException e)
    {
        System.out.println  ("ERROR");
    }
    return NOM3;
}
}

1 Respuesta

Respuesta
1
Eso de que no debas hacer ninguna llamada a ningún método esta medio raro y de hecho no es para nada usual, pero suponiendo que por equis razón te lo pidieron así, lo que puedes hacer es meter todo el código de la clase op en el constructor. Tu main quedaría así:
public static void main(String[] args) {
        op NOM = new op(); 
    }
y el codigo que tienes en el metodo no de la clase op, iria en el contructor de la clase op,
public op () 

    try 
    { 
    System.out.println ("Ingrese su nombre"); 
    NOM1 = DATO1.readLine (); 
    NOM3=NOM1; 
    System.out.println  ("Su nombre es "+NOM1); 
    } 
    catch (IOException e) 
    { 
        System.out.println  ("ERROR"); 
    } 
    System.out.println (NOM3);
}
}
Por supuesto en el constructor no puedes regresar ningún tipo de dato, por lo que la impresión de los resultados la tendrías que hacer en el mismo constructor de op.
Gracias otra pregunta... en el mismo ejercicio anterior en la parte de regresar dos caracteres de tipo char al ingresar en primer valor a la primera variable char todo bien pero al ingresar la segunda no me permite simplemente me sale el System.out.println, ¿osea la pregunta pero no me deja ingresar una letra porque es esto? osea me hace saltar la siguiente pregunta ya sea de tipo char o string...
¿Podrías pegar el código?, en lo anterior que veo solo puedo ver una pregunta (pidiendo el nombre) y según entiendo en tu pregunta mencionas una segunda pregunta por parte del sistema, ¿es así o me confundí?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas