Capítulo 10 La primera pregunta (clase de tiempo) (clase de tiempo)

Capítulo 10 La primera pregunta (clase de tiempo) (clase de tiempo)

  • * 10.1 (Clase de tiempo) Diseñe una clase llamada Tiempo. Esta clase contiene:

    • Los campos de datos hora, minuto y segundo representan el tiempo.
    • Un método de construcción sin parámetros que crea un objeto Time con la hora actual (el valor del campo de datos representa la hora actual).
    • Un método para construir un objeto Time para construir un objeto Time con un valor de tiempo transcurrido especificado. Este valor es el valor expresado en milisegundos desde la medianoche del 1 de enero de 1970 hasta el presente (el valor del campo de datos representa este tiempo ).
    • El método de construcción del objeto Time con la hora, minuto y segundo especificados.
    • Los métodos de adquisición respectivos de los tres campos de datos hora, minuto y segundo.
    • Un método llamado setTime (long elapseTime) usa el tiempo transcurrido para establecer una nueva hora para el objeto. Por ejemplo, si el tiempo transcurrido es 555550000 milisegundos, se convierte en 10 horas, 10 minutos y 10 segundos.

    Dibuje el diagrama UML de esta clase e implemente esta clase. Escriba un programa de prueba para crear dos objetos Time (usando newTime () y new Time (55550000)), y luego muestre sus horas, minutos y segundos.
    Consejo: Los dos primeros métodos de construcción pueden extraer horas, minutos y segundos del tiempo transcurrido. Para el método de construcción sin parámetros, puede usar System.currentTimeMills () para obtener la hora actual, como se muestra en el Listado 2-7. Suponga que la hora usa GMT.
    * 10.1 (Clase de tiempo) Diseña una clase llamada tiempo. Esta clase contiene:

    • Los campos de datos para el tiempo son hora, minuto y segundo.
    • Un método de construcción no paramétrico que crea un objeto de hora en la hora actual (el valor del campo de datos representa la hora actual).
    • Un método para construir un objeto de tiempo. El objeto de tiempo se construye con un valor de tiempo transcurrido especificado. Este valor es el valor expresado en milisegundos desde la medianoche del 1 de enero de 1970 (el valor en el campo de datos representa la hora).
    • Construye el constructor del objeto time en las horas, minutos y segundos especificados.
    • Los tres campos de datos hora, minuto y segundo se obtienen respectivamente.
    • Un método llamado setTime (long elapsetime) usa el tiempo transcurrido para establecer una nueva hora para el objeto. Por ejemplo, si el tiempo transcurrido es 55555000 milisegundos, se convierte en 10 horas, 10 minutos y 10 segundos.

    Dibuje el diagrama UML de la clase e implemente la clase. Escriba un programa de prueba, cree dos objetos de tiempo (usando newtime () y new time (5550000)), y luego muestre sus horas, minutos y segundos.
    Consejo: los dos primeros métodos de construcción pueden extraer horas, minutos y segundos del tiempo transcurrido. Para métodos de construcción no paramétricos, puede usar System.currentTimeMills () obtiene la hora actual, como se muestra en el listado 2-7. Suponga que el tiempo usa GMT.

  • Código de referencia:

package chapter10;

public class Code_01 {
    
    
    public static void main(String[] args) {
    
    
        Time t1 = new Time();
        System.out.println(t1.getHour() + " " + t1.getMinute() + " " + t1.getSecond());
        Time t2 = new Time(555550000);
        System.out.println(t2.getHour() + " " + t2.getMinute() + " " + t2.getSecond());
    }
}
class Time{
    
    
    private long second;
    private long minute;
    private long hour;

    public Time(){
    
    
        long t = System.currentTimeMillis()/1000;
        second = t % 60;
        t /= 60;
        minute = t % 60;
        t /= 60;
        hour = t % 24;
    }

    public Time(long t){
    
    
        t /= 1000;
        second = t % 60;
        t /= 60;
        minute = t % 60;
        t /= 60;
        hour = t;
    }

    public Time(long hour, long minute, long second){
    
    
        this.hour = hour;
        this.minute = minute;
        this.second = second;
    }

    public long getSecond(){
    
    
        return second;
    }

    public long getMinute(){
    
    
        return minute;
    }

    public long getHour(){
    
    
        return hour;
    }

    public void setTime(long elapseTime){
    
    
        elapseTime /= 1000;
        this.second = elapseTime%60;
        elapseTime /= 60;
        this.minute = elapseTime%60;
        elapseTime /= 60;
        this.hour = elapseTime;
    }
}

  • Los resultados muestran que:
9 42 46
154 19 10

Process finished with exit code 0

Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/jxh1025_/article/details/109294713
Recomendado
Clasificación