1) Contrua uma classe abstrata IntrumentoMusical com um método abstrato tocar( ). Contrua 2 classes violao e Sax que implementam essa classe e faça a seguinte chamada abaixo no ProgramaPrincipal.
InstrumentoMusicalsax=newSax();//implementação do método abstrato tocarsax.tocar();InstrumentoMusicalviolao=newViolao();//implementação do método abstrato tocarviolao.tocar();
Bom, como se trata de uma classe abstrata, lembre-se, classes abstratas foram criadas para não serem instanciadas e sempre herdadas por tipos concretos.
No mais, ao amigo que pediu ajudam, o exercício tem alguns passos bem claros que dá pra fazer antes de pedir ajuda
Realmente tente, é por aí que o processo de aprendizado se fortalece.
R
Romeu_Fernandes
Boa tarde Chaybelucas
Conseguir desenvolver, porem está acontecendo um erro que não estou entendendo… Se você puder me ajudar…
E esta acontecendo um erro no metodo tocar na classe InstrumentoMusical
drsmachado
Pelo que entendi, você deveria criar 4 classes:
1 - A classe abstrata InstrumentoMusical
2 - A classe Sax
3 - A classe Violao
4 - Uma classe para testar, com o método main, onde você iria instanciar dois objetos, um de sax e outro de violão e, a partir deles, invocar os métodos tocar.
Entendi errado?
R
Romeu_Fernandes
Então pelo o que eu entendi são apenas 3 classes…
A Classe abstrata Instrumento Musical
Classe Sax
Classe Violão
Porem a invocação do metodo esta dando errado na Classe Instrumento Musical
R
Romeu_Fernandes
Galera duvida resolvida!!!
São 4 classes
Classe abstrata: InstrumentoMusical
ProgramaPrincipal
Sax
Violao
pmlm
O teu problema não estava no número de classes, com 3 ou com 4 funcionaria da mesma forma. O teu problema era a falta de declaração do método tocar na classe InstrumentoMusical
publicabstracttocar();
staroski
Faltou o tipo de retorno.
public abstract void tocar();
raphaeloneves
Só lembrando que o método tocar() tb pode ser concreto e fazer o override nas subclasses.