1
resposta

[Projeto] Reservas

package Reserva;

public class Reserva {
    void reservar(){
        System.out.println("Reserva realizada");
    }

    void reservar(String data){
        System.out.printf("Reserva feita para o dia %s\n", data);
    }

    void reservar(String data, int pessoas){
        System.out.printf("Reserva feita para o dia %s para %s\n pessoas", data, pessoas);
    }
}
package Reserva;

public class ReservaVip extends Reserva{
    @Override
    void reservar() {
        System.out.println("Reserva VIP confirmada com atendimento exclusivo!");
    }
}
package Reserva;

public class Main {
    static void main(String[] args) {
        Reserva reserva = new Reserva();
        reserva.reservar();
        reserva.reservar("23/04");
        reserva.reservar("23/04", 3);

        ReservaVip reservaVip = new ReservaVip();
        reservaVip.reservar();
    }
}
1 resposta

Oi, Gabriel! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Gostei de como você aplicou sobrecarga de métodos na classe Reserva e também utilizou herança com sobrescrita (@Override) na ReservaVip. Isso mostra que você entendeu bem como adaptar comportamentos diferentes mantendo uma estrutura comum.

Uma dica interessante para o futuro é usar o método toString() para representar objetos de forma mais organizada.


class Reserva {
    String data;
    int pessoas;

    public String toString() {
        return "Reserva para " + data + " com " + pessoas + " pessoas";
    }
}

Esse código cria uma representacao em texto do objeto, facilitando a exibicao de informacoes sem precisar de varios System.out.println.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!