Prévia do material em texto
Principais OOP (Objetos, Classes, Métodos) 1. O que e uma classe em Programacao Orientada a Objetos (OOP)? a) Uma instancia de um objeto. b) Um tipo de dado que descreve o comportamento e os atributos de um objeto. c) Uma variavel que armazena o estado do programa. d) Um metodo utilizado para alterar os valores de um objeto. Resposta correta: b) Um tipo de dado que descreve o comportamento e os atributos de um objeto. Explicacao: A classe em OOP serve como um molde ou estrutura para criar objetos. Ela define os atributos (dados) e os metodos (comportamentos) que os objetos dessa classe terao. 2. O que e um objeto em Programacao Orientada a Objetos (OOP)? a) Uma instancia de uma classe, com valores especificos para seus atributos. b) Um metodo que manipula dados dentro de uma classe. c) Um tipo de dado que armazena comportamentos. d) Uma variavel global que armazena um valor. Resposta correta: a) Uma instancia de uma classe, com valores especificos para seus atributos. Explicacao: Um objeto e uma instancia concreta de uma classe. Quando uma classe e definida, ela funciona como um molde, e o objeto e uma instancia dessa classe com valores reais atribuidos aos seus atributos. 3. O que sao metodos em Programacao Orientada a Objetos? a) Funcoes que definem o comportamento de um objeto. b) Atributos de uma classe que armazenam dados. c) Variaveis globais que podem ser acessadas em qualquer parte do codigo. d) Tipos de dados definidos pelo programador. Resposta correta: a) Funcoes que definem o comportamento de um objeto. Explicacao: Metodos sao funcoes definidas dentro de uma classe que descrevem o comportamento do objeto. Eles podem manipular os atributos da classe e realizar operacoes sobre eles. 4. Qual e a principal diferenca entre uma classe e um objeto? a) A classe define o comportamento e o objeto define os atributos. b) A classe e uma instancia do objeto, enquanto o objeto e um tipo de dado. c) A classe e o molde que define o comportamento e os atributos, enquanto o objeto e uma instancia dessa classe. d) Nao ha diferenca; ambos sao a mesma coisa. Resposta correta: c) A classe e o molde que define o comportamento e os atributos, enquanto o objeto e uma instancia dessa classe. Explicacao: A classe e uma definicao de como um objeto deve se comportar e quais atributos ele tera. O objeto, por sua vez, e uma instancia concreta dessa classe, ou seja, e uma "copia" da classe com valores especificos para os atributos. 5. O que significa o termo "encapsulamento" em OOP? a) Ocultar os detalhes da implementacao, mostrando apenas as funcionalidades necessarias. b) Tornar os metodos da classe publicos, permitindo acesso irrestrito aos atributos. c) Dividir a classe em varias sub-classes para otimizar a performance. d) Criar variaveis globais que podem ser acessadas por qualquer metodo. Resposta correta: a) Ocultar os detalhes da implementacao, mostrando apenas as funcionalidades necessarias. Explicacao: O encapsulamento e um principio de OOP que visa esconder os detalhes internos da implementacao de uma classe, expondo apenas os metodos e atributos essenciais para o usuario da classe. Isso melhora a seguranca e a modularidade do codigo. 6. O que e heranca em OOP? a) A capacidade de uma classe herdar metodos e atributos de outra classe. b) A criacao de uma nova instancia de uma classe. c) O uso de metodos que alteram o comportamento de objetos. d) A reutilizacao de codigo sem a criacao de novas classes. Resposta correta: a) A capacidade de uma classe herdar metodos e atributos de outra classe. Explicacao: Heranca permite que uma classe derive de outra, herdando seus atributos e metodos. Isso facilita a reutilizacao de codigo, ja que a classe derivada pode usar tudo o que foi definido na classe base, podendo ainda adicionar ou modificar funcionalidades especificas. 7. O que e polimorfismo em OOP? a) A capacidade de um objeto assumir diferentes formas, permitindo que ele seja tratado de maneira uniforme, mas com comportamentos diferentes. b) A criacao de multiplos objetos a partir de uma classe. c) A sobrecarga de metodos dentro de uma classe. d) A definicao de classes abstratas que nao podem ser instanciadas. Resposta correta: a) A capacidade de um objeto assumir diferentes formas, permitindo que ele seja tratado de maneira uniforme, mas com comportamentos diferentes. Explicacao: Polimorfismo permite que metodos com o mesmo nome se comportem de maneiras diferentes, dependendo do tipo de objeto que esta sendo utilizado. Ele facilita o uso de interfaces comuns, enquanto permite que cada classe tenha seu proprio comportamento. 8. O que sao metodos estaticos em OOP? a) Metodos que pertencem a classe e nao a uma instancia especifica. b) Metodos que nao podem ser chamados fora da classe. c) Metodos que podem ser sobrescritos em classes derivadas. d) Metodos que apenas alteram atributos estaticos de uma classe. Resposta correta: a) Metodos que pertencem a classe e nao a uma instancia especifica. Explicacao: Metodos estaticos sao chamados diretamente pela classe, e nao por instancias dela. Isso significa que esses metodos podem ser usados sem a necessidade de criar um objeto da classe. 9. Qual e o proposito da palavra-chave "this" em OOP? a) Acessar atributos e metodos estaticos da classe. b) Referenciar a instancia atual do objeto dentro de um metodo da classe. c) Definir um atributo ou metodo como estatico. d) Criar um novo objeto de uma classe. Resposta correta: b) Referenciar a instancia atual do objeto dentro de um metodo da classe. Explicacao: A palavra-chave "this" e usada para referenciar a instancia atual de um objeto dentro de seus proprios metodos ou construtores. Isso e util, por exemplo, quando ha ambiguidade entre os parametros do metodo e os atributos da classe. 10. O que sao atributos em OOP? a) Variaveis que definem o comportamento de uma classe. b) Variaveis que armazenam dados ou estado de um objeto. c) Metodos que alteram o comportamento de uma classe. d) Funcoes que sao usadas para criar objetos. Resposta correta: b) Variaveis que armazenam dados ou estado de um objeto. Explicacao: Atributos sao as variaveis de uma classe que armazenam os dados do objeto. Cada instancia de um objeto pode ter valores diferentes para seus atributos, representando o estado do objeto. 11. O que significa o termo "metodo construtor" em OOP? a) Um metodo que inicializa um objeto, atribuindo valores aos seus atributos no momento da criacao. b) Um metodo que destroi um objeto quando ele nao e mais necessario. c) Um metodo que altera os atributos de um objeto depois de sua criacao. d) Um metodo que e usado para acessar os dados de uma classe de forma protegida. Resposta correta: a) Um metodo que inicializa um objeto, atribuindo valores aos seus atributos no momento da criacao. Explicacao: O metodo construtor e invocado quando um objeto e instanciado. Ele e usado para inicializar os atributos do objeto com valores especificos, permitindo que o objeto comece sua vida com um estado definido. 12. Como a visibilidade de um metodo ou atributo e controlada em OOP? a) Usando modificadores de acesso como "public", "private" e "protected". b) Usando a palavra-chave "static". c) Criando metodos getters e setters. d) Definindo metodos abstratos na classe. Resposta correta: a) Usando modificadores de acesso como "public", "private" e "protected". Explicacao: Os modificadores de acesso controlam a visibilidade e o acesso a metodos e atributos. "public" permite acesso de qualquer lugar, "private" restringe o acesso a propria classe, e "protected" permite o acesso dentro da classe e suas subclasses. 13. O que significa "sobrecarga de metodo" em OOP? a) A criacao de metodos com o mesmo nome, mas com parametros diferentes, dentro da mesma classe. b) A redefinicao de metodos herdados de uma classe base. c) A criacao de metodos para alterar atributos de objetos diretamente. d) A substituicao de um metodo existente porum novo metodo com o mesmo nome. Resposta correta: a) A criacao de metodos com o mesmo nome, mas com parametros diferentes, dentro da mesma classe. Explicacao: A sobrecarga de metodo ocorre quando ha multiplos metodos com o mesmo nome, mas com uma assinatura diferente (numero ou tipo de parametros). Isso permite que um metodo realize diferentes operacoes dependendo dos parametros fornecidos. 14. O que e uma classe abstrata em OOP? a) Uma classe que nao pode ser instanciada, mas pode ter metodos abstratos e concretos. b) Uma classe que implementa todos os metodos de suas subclasses. c) Uma