Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Construtores e sua criação

Pergunta 1 - Ok, entendi que preciso do construtor na mãe para que as filhas possam herdar, mas e se eu quiser um construtor de Filme recebendo (x, y, z) parâmetros, e pra Série recebendo (a, b, c) parâmetros, ou até outro recebendo (a, c) parâmetros, basta eu declarar tudo isso na mãe e na hora que eu for instanciar o objeto, dependendo dos parâmetros que eu colocar, ele já vai identificar qual é o construtor que é puxa-lo?

Pergunta 2 - Mas e se eu tiver dois construtores, por exemplo, que recebem valor inteiro, só se diferenciam nos nomes das variáveis, como ele vai saber ou melhor, como eu vou indicar que quero usar um e não o outro? (int numeroMinutos, int numeroPersonagens) // Exemplo Fictício (int numeroMinutos, int duracaoTrailer) // Exemplo Fictício

Pergunta 3 - Se eu extender uma classe da Série, e precisar de um construtor igual o de Série, eu não consigo herdar?

1 resposta
solução!

Pergunta 1 => R: O Java vai identificar qual construtor vai ser utilizado pelos parâmetros, você pode criar um padrão na superClasse mãe e criar outros construtores para as subClasses Filme ou Serie, caso você criar esses outros construtores na superClasse mãe os filhos vão precisar adicionar eles obrigatoriamente para não ocorrer erro

public class Producao {
    private String titulo;
    private int duracao;

    public Producao(String titulo, int duracao) {
        this.titulo = titulo;
        this.duracao = duracao;
    }
}

public class Filme extends Producao {
    private int numeroPersonagens;

    public Filme(String titulo, int duracao) {
        super(titulo, duracao);
    }

    public Filme(String titulo, int duracao, int numeroPersonagens) {
        super(titulo, duracao);
        this.numeroPersonagens = numeroPersonagens;
    }
}

obs: se for usar parâmetros diferentes, vai precisar fazer isso mesmo, criar os construtores na superClasse para depois fazer nas subClasses como falei lá em cima

Pergunta 2 => R: O Java não vai entender e vai dar erro, precisa ter ao menos o nome do construtor diferente para isso funcionar

sobre a pergunta 3 eu não entendi direito, mas acho que o código que deixei na resposta da pergunta 1 possa ser a resposta, onde eu estou usando o super no construtor para enviar os valores titulo e duracao