Estou com uma dúvida, eu consigo adicionar uma música porque o ArtistaDall recebe um contexto de Artista e assim herdado o seus métodos? É isso?
Porque o método está no Artista.

Classe Menu
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Estou com uma dúvida, eu consigo adicionar uma música porque o ArtistaDall recebe um contexto de Artista e assim herdado o seus métodos? É isso?
Porque o método está no Artista.

Classe Menu
Bom dia, Igor! Tudo bem?
Quando você menciona que consegue adicionar uma música, isso provavelmente se refere ao fato de que a classe ArtistaDAL está lidando com as operações de banco de dados para a entidade Artista, e não diretamente com a entidade Música.
No código que você compartilhou, há um método AdicionarMusica na classe Artista, que permite adicionar uma música a um artista específico. Quando você recupera um artista usando o ArtistaDAL e chama AdicionarMusica, você está, na verdade, manipulando a lista de músicas associada a esse artista.
O ArtistaDAL não herda métodos de Artista, mas sim utiliza o contexto do banco de dados para realizar operações como adicionar, buscar e listar artistas. O método AdicionarMusica é chamado em um objeto Artista específico, que você recuperou através do ArtistaDAL.
Espero ter ajudado e bons estudos!
Armano eu acho que eu entendi sim.
As minhas classes Artistas e Musicas, são as minhas entidades que receberam os registros. Como você comentou, em Artistas eu consigo add a música, pois ele tem uma lista de Musicas o que caracteriza a relacionamento de artista para musica.
Artista:
Musica:
Já no Dal eu tenho a interação com o Banco no estilo mais genérico e passo o tipo certo quando eu vou manipular ele, assim o objeto que recebe esse tipo tem acesso aos métodos do Dal e do tipo escolhido. (DAL<T>)
Aí como eu uso o DAL<Artista> eu consigo ter acesso aos métodos do DAL e também de Artista.
É isso, né? kkkkk