Programação orientada para os objectos - Questionário
  • 1. A programação orientada para objectos (OOP) é um paradigma de programação baseado no conceito de "objectos", que podem conter dados sob a forma de campos e código sob a forma de procedimentos. Os objectos são instâncias de classes, que definem a estrutura e o comportamento dos objectos. A POO centra-se na organização do código em componentes reutilizáveis e modulares, permitindo uma melhor organização e manutenção do código. O encapsulamento, a herança e o polimorfismo são conceitos-chave na POO, fornecendo mecanismos para a ocultação de dados, reutilização de código e flexibilidade na implementação. Ao modelar entidades do mundo real como objectos, a POO promove uma abordagem de conceção mais clara e intuitiva ao desenvolvimento de software.

    Qual é o principal conceito subjacente à programação orientada para objectos?
A) Encapsulamento
B) Polimorfismo
C) Abstração
D) Herança
  • 2. Que palavra-chave é utilizada para criar um objeto em Java?
A) novo
B) este
C) classe
D) var
  • 3. O que é uma classe na programação orientada para objectos?
A) Modelo para a criação de objectos
B) Uma função em JavaScript
C) Uma variável em C++
D) Uma instância de um objeto
  • 4. O que é o polimorfismo na programação orientada para objectos?
A) Extensão da funcionalidade de uma classe-mãe
B) Possibilidade de objectos de classes diferentes serem tratados como objectos de uma superclasse comum
C) Ocultar pormenores de implementação
D) Criar objectos a partir de classes
  • 5. O que é o encapsulamento na programação orientada para objectos?
A) Ligação entre os dados e os métodos que operam sobre os dados
B) Criar várias instâncias de um objeto
C) Herdar propriedades de uma classe-mãe
D) Substituição de métodos da classe-mãe
  • 6. O que é um construtor na programação orientada para objectos?
A) Um método que devolve um valor
B) Um método utilizado para destruir objectos
C) Um método especial que é chamado automaticamente quando um objeto é criado
D) Um método estático
  • 7. Para que é que a palavra-chave "super" é utilizada em Java?
A) Refere-se à superclasse de uma classe, utilizada para chamar métodos da superclasse
B) Implementação de uma interface
C) Declarar uma variável
D) Aceder a um método privado
  • 8. O que é a sobrecarga de métodos na programação orientada para objectos?
A) Criar novos métodos numa subclasse
B) Ocultar os detalhes de implementação de um método
C) Ter vários métodos numa classe com o mesmo nome mas com parâmetros diferentes
D) Substituir um método de uma superclasse
  • 9. O que é a abstração de dados na programação orientada para objectos?
A) Criar vários objectos a partir de uma classe
B) Aceder a membros privados da classe
C) Substituir métodos de uma classe-mãe
D) Esconder os detalhes de implementação e mostrar apenas os detalhes necessários de um objeto
  • 10. O que é um modificador de acesso público na programação orientada para objectos?
A) Permite a extensão de classes
B) Oculta os detalhes do objeto
C) Restringe o acesso apenas à mesma classe
D) Permite que uma classe, método ou campo seja acedido por qualquer outro código no mesmo pacote ou noutro pacote
  • 11. Para que é que a palavra-chave "final" é utilizada em Java?
A) Permite a ligação dinâmica de métodos
B) Força a substituição de métodos
C) Permite a herança múltipla
D) Impede a modificação da classe, método ou variável
  • 12. Que palavra-chave é utilizada para se referir ao objeto atual em Java?
A) novo
B) super
C) estende-se
D) este
  • 13. Que modificador de acesso permite que uma classe seja acedida por qualquer outra classe?
A) Protegido
B) Privado
C) Público
D) Predefinição
  • 14. Que palavra-chave é utilizada para herdar uma classe em Java?
A) super
B) implementa
C) estende-se
D) este
  • 15. Que termo descreve a capacidade de criar novas classes com base em classes existentes?
A) Polimorfismo
B) Herança
C) Abstração
D) Encapsulamento
  • 16. Qual é o objetivo da substituição de métodos na programação orientada para objectos?
A) Para ocultar os pormenores de implementação de um método
B) Para criar novos métodos numa subclasse
C) Para ter vários métodos com o mesmo nome numa classe
D) Para fornecer uma implementação específica de um método que já é fornecido pela sua superclasse
  • 17. Que relação representa uma situação em que uma classe é dependente de outra classe?
A) Herança
B) Dependência
C) Agregação
D) Composição
  • 18. Que termo é utilizado para descrever o ato de restringir a forma como as subclasses podem modificar uma superclasse?
A) Substituição
B) Sobrecarga
C) Ultrapassagem
D) Substituir
  • 19. Que funcionalidade permite que uma classe tenha vários métodos com o mesmo nome mas com parâmetros diferentes?
A) Substituição
B) Herança
C) Sobrecarga
D) Encapsulamento
  • 20. O que significa o acrónimo "DRY" no contexto da programação orientada para os objectos?
A) Representação de dados Ano
B) Não se repita
C) Estaleiro de reutilização dinâmica
D) Repetir-se a si próprio
  • 21. Um método que tem o mesmo nome que a classe em que está definido é conhecido como um:
A) Método de acessório
B) Construtor
C) Destruidor
D) Método mutante
  • 22. Que princípio é violado se uma subclasse não puder ser substituída pela sua superclasse?
A) Princípio da inversão de dependência
B) Princípio de substituição de Liskov
C) Princípio aberto/fechado
D) Princípio da responsabilidade única
  • 23. Que caraterística permite que o mesmo método seja utilizado para diferentes tipos de objectos?
A) Herança
B) Abstração
C) Polimorfismo
D) Encapsulamento
  • 24. Que princípio de conceção sugere que uma classe deve ter apenas uma razão para mudar?
A) Princípio da segregação de interfaces
B) Princípio da responsabilidade única
C) Princípio aberto/fechado
D) Princípio de substituição de Liskov
  • 25. Que palavra-chave é utilizada para evitar a substituição de métodos em Java?
A) final
B) abstrato
C) público
D) estático
  • 26. Qual é o princípio de conceção que estabelece que as classes devem ser abertas para extensão mas fechadas para modificação?
A) Princípio aberto/fechado
B) Princípio da responsabilidade única
C) Princípio da segregação de interfaces
D) Princípio de substituição de Liskov
  • 27. Qual das seguintes opções permite a herança múltipla em C++?
A) Classes abstractas
B) Interfaces
C) Herança virtual
D) Polimorfismo
  • 28. Que tipo de relação reflecte uma relação "tem-uma" entre classes?
A) Agregação
B) Herança
C) Dependência
D) Composição
Criado com That Quiz — onde podemos encontrar exercícios de matemática e de outras disciplinas.