Ed
anteontem
Vamos analisar as alternativas apresentadas sobre o conceito de polimorfismo em programação orientada a objetos: 1. Uma possível forma de implementar polimorfismo em uma linguagem de programação é através do polimorfismo universal paramétrico, em que a conversão de tipos sobre os parâmetros de uma função se dá implicitamente. - Essa definição é mais relacionada ao polimorfismo paramétrico, que é um tipo de polimorfismo, mas não abrange completamente o conceito de polimorfismo em OOP. 2. Linguagens de programação que implementem o conceito de herança também precisam implementar o conceito de polimorfismo por construção. - Embora a herança e o polimorfismo estejam frequentemente relacionados, essa afirmação não é uma definição clara de polimorfismo. 3. A implementação de polimorfismo em linguagens de programação se vale do conceito de ligação tardia, em que o tipo de uma variável só é conhecido em tempo de execução. Isso significa que linguagens compiladas não possuem polimorfismo na forma estrita. - Essa afirmação é confusa, pois muitas linguagens compiladas também suportam polimorfismo, e a ligação tardia é uma característica que pode ser implementada em várias linguagens. 4. Polimorfismo representa um conceito em que um mesmo nome (como uma variável, por exemplo) pode denotar objetos de diferentes classes que estão relacionadas por uma superclasse comum. - Esta é uma definição correta de polimorfismo, pois descreve como um único nome pode se referir a diferentes implementações de classes que herdam de uma superclasse. 5. Linguagens de programação que não possuem tipo, como, por exemplo, Python, não podem implementar polimorfismo. - Essa afirmação é falsa, pois Python é uma linguagem dinamicamente tipada e suporta polimorfismo. Diante da análise, a alternativa que conceitua corretamente o polimorfismo é: Polimorfismo representa um conceito em que um mesmo nome (como uma variável, por exemplo) pode denotar objetos de diferentes classes que estão relacionadas por uma superclasse comum.