1
resposta

meu codigo

public class Midia {

    private String titulo;
    private int ano;

    public Midia(String titulo, int ano) {
        this.titulo = titulo;
        this.ano = ano;
    }

    String gerarCodigo(){
        String codigo = "LIB-" + (this.getTitulo().toUpperCase().substring(0,3))+this.getAno();//getBytes(3);
        return codigo;
    }


    public String getTitulo() {
        return titulo;
    }

    public int getAno() {
        return ano;
    }
}
public class Ebook extends Midia{
    private String formato;

    public Ebook(String titulo, int ano, String formato) {
        super(titulo, ano);
        this.formato = formato;
    }

    public String getFormato() {
        return formato;
    }

    void exibirInfo(){
        System.out.println("Código: " + this.gerarCodigo() + " | Ebook: " + this.getTitulo() + " | Formato: " + this.getFormato());
    }
}
public class Livro extends  Midia {

    private String autor;

    public Livro(String titulo, int ano, String autor) {
        super(titulo, ano);
        this.autor = autor;
    }

    public String getAutor() {
        return autor;
    }


    void exibirInfo(){
        System.out.println("Código: " + this.gerarCodigo() + " | Livro: " + this.getTitulo() + " | Autor: " + this.getAutor());
    }

}
public class Revista extends Midia {

    private int edicao;

    public Revista(String titulo, int ano, int edicao) {
        super(titulo, ano);
        this.edicao = edicao;
    }

    void exibirInfo(){
        System.out.println("Código: " + this.gerarCodigo() + " | Revista: " + this.getTitulo() + " | Edição: " + this.getEdicao());
    }

    public int getEdicao() {
        return edicao;
    }
}
public class Main {

    public static void main(String[] args) {

        Livro locuppation = new Livro("L'occupation", 2002, "Annie Ernaux");
        locuppation.exibirInfo();

        Revista natGeo = new Revista("National Geographic", 2023, 245);
        natGeo.exibirInfo();

        Ebook cleanCode = new Ebook("Clean Code", 2008,"PDF");
        cleanCode.exibirInfo();





    }
}
1 resposta

Oi, Diogo! Como vai?

Agradeço por compartilhar.

Achei interessante como você estruturou as classes com herança e polimorfismo, deixando cada tipo de mídia com seu próprio método exibirInfo(). Isso mostra bem a aplicação dos conceitos que o curso propõe.

Continue firme nos estudos.

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