Tecnologia da InformaçãoProgramação orientada a objetosProGPe UFSCAR 2012
UFSCAR
Questão de Tecnologia da Informação
Na programação orientada a objetos, a herança simples pode ser usada para estender comportamento. No entanto, ela possui algumas limitações: I. Com herança, só é possível estender comportamento em tempo de compilação. Não é possível estender comportamento em tempo de execução; II. A interface do comportamento estendido deve ser mantida. Em outras palavras, a assinatura dos métodos correspondentes ao comportamento de uma classe deve ser a mesma nas subclasses que estendem esse comportamento. Não é possível, por exemplo, adicionar um parâmetro ou modificar o tipo de retorno de um método referente ao comportamento estendido; III. Com herança simples, caso exista um grande número de extensões independentes de comportamento, seria necessário um número ainda maior de subclasses para cobrir todas as combinações possíveis, o que é pouco prático; e IV. Na herança, todas as instâncias da subclasse tem obrigatoriamente seu comportamento estendido. Não é possível fazer com que apenas algumas instâncias tenham o comportamento estendido sem criar uma outra subclasse. Uma alternativa à herança para extensão de comportamento é o padrão de projeto Decorador (em inglês, Decorator), cuja estrutura é exemplificada no diagrama de classes a seguir:

Quais das limitações anteriores podem ser superadas com o uso do padrão Decorador?
Mais questões de Programação orientada a objetos
- Instituto Verbena 2026Em programação orientada a objetos, o uso do conceito de polimorfismo implica que
- Legalle 2026No contexto do desenvolvimento de um sistema orientado a objetos em Java, um Analista de Sistemas está projetando uma hierarquia de classes para representar diferentes formas de c…
- Selecon 2026Em um software de automação, o módulo de sensores foi implementado de forma que várias partes do sistema acessam e alteram diretamente os dados de um sensor, por exemplo, o "off s…
- UNESC 2026Na programação Orientada a Objetos (POO), suportada por linguagens como Java e Python, existem pilares fundamentais que permitem a reutilização e a organização eficiente do código…
- Instituto ACCESS 2026No desenvolvimento de sistemas utilizando linguagens de programação orientadas a objetos, conceitos como classes, objetos, encapsulamento, herança e polimorfismo relacionam-se às…
Questão de prova oficial, com o gabarito definitivo publicado pela banca. Reproduzida para fins de estudo.




