Boa tarde, fiquei com uma duvida nesta aula.
Não ficou claro pra mim o porque da criação desta classe PrincipalComLista. É somente para trabalhar listas? A main não será mais utilizada? Se puderem me sanar essa duvida, agradeço.
Boa tarde, fiquei com uma duvida nesta aula.
Não ficou claro pra mim o porque da criação desta classe PrincipalComLista. É somente para trabalhar listas? A main não será mais utilizada? Se puderem me sanar essa duvida, agradeço.
Oii, Renan! Tudo bem?
Em projetos Java, podemos ter mais de uma classe com o método main. No caso do curso, a classe que você já tinha (provavelmente apenas Principal) estava ficando carregada com a lógica de criação de objetos, cálculos de tempo e filtros.
A criação da PrincipalComListas serve para:
ArrayList, for-each e o comportamento de diferentes tipos de objetos (como Filme e Serie) dentro de uma mesma lista.main, você não precisa apagar ou comentar todo o código antigo para testar algo novo. Você mantém o histórico do que já construiu na classe anterior e foca apenas no comportamento das listas nesta nova.main antiga será descartada?Não necessariamente. Em um sistema real, geralmente temos apenas um ponto de entrada (um único main) que inicia toda a aplicação. No entanto, durante o desenvolvimento e o aprendizado, tratamos cada classe main como um script de teste diferente.
Você pode escolher qual delas quer executar clicando com o botão direito sobre o arquivo e selecionando Run.
A grande sacada aqui foi perceber que, ao colocar tudo em uma lista de Titulo, ganhamos flexibilidade para guardar tanto filmes quanto séries. O problema que você viu no final (o ClassCastException) acontece justamente porque tentamos forçar a série Lost a se comportar como um Filme para acessar a classificação, o que o Java não permite sem uma verificação prévia.
Dica didática: Pense na
PrincipalComListascomo um "laboratório" novo. O laboratório anterior ainda existe, mas este novo tem ferramentas específicas para estudar como os objetos se agrupam.