Questões de Concurso
Sobre programação orientada a objetos em programação
Foram encontradas 892 questões
O padrão de projeto que atende a essa necessidade é chamado
O padrão de projeto que resolve esse problema é o
Assinale a opção que apresenta corretamente o termo utilizado para descrever uma estrutura que define o comportamento geral que toda uma categoria de objetos pode ter.
( ) O polimorfismo de inclusão permite que objetos de subclasses sejam tratados como objetos de suas superclasses, possibilitando a invocação de métodos sobrescritos conforme o tipo real do objeto.
( ) A herança múltipla de classes é um recurso obrigatório e presente de forma nativa em todas as linguagens modernas, como Java e C#, para garantir a máxima flexibilidade de design.
( ) Classes abstratas são componentes de design que não permitem a criação direta de instâncias, servindo como modelos para outras classes que devem implementar seus métodos obrigatórios.
( ) O princípio do encapsulamento determina que todos os atributos de uma classe devem ser obrigatoriamente públicos para facilitar o acesso de outras classes e reduzir o acoplamento.
Após análise, assinale a alternativa que apresenta a sequência CORRETA dos itens acima, de cima para baixo:
I.Para que ocorra a sobrecarga, dois ou mais métodos na mesma classe devem ter o mesmo nome, mas obrigatoriamente listas de parâmetros diferentes (em número, tipo ou ordem dos parâmetros).
II.A sobrecarga de métodos não pode ser realizada alterando-se apenas o tipo de retorno do método; o compilador considerará isso um erro se a lista de parâmetros for idêntica.
III.A sobrecarga de métodos é uma forma de polimorfismo de tempo de compilação (estático), pois o compilador decide qual versão do método chamar com base nos argumentos fornecidos na chamada.
Está correto o que se afirma em:
(__)Uma classe abstrata (declarada com abstract) pode conter tanto métodos abstratos (sem corpo) quanto métodos concretos (com implementação).
(__)Interfaces (declaradas com interface) em Java, antes da versão 8, podiam conter apenas assinaturas de métodos (abstratos e públicos) e constantes (estáticas e finais).
(__)Uma classe pode estender (herdar) múltiplas classes abstratas, mas só pode implementar uma única interface, para evitar o problema do diamante.
(__)Não é possível criar instâncias (objetos) diretamente de uma classe abstrata ou de uma interface usando o operador new.
Assinale a alternativa que apresenta a sequência correta, de cima para baixo.
Esses dois pilares da OO são conhecidos, respectivamente, como:
I.MA1 - Quando qualquer um pode acessar variáveis de instância públicas.
II.MA2 - Quando métodos do mesmo pacote ou subclasse podem acessar variáveis de instância protegidas.
III.MA3 -Quando apenas métodos da mesma classe, excluindo métodos de uma subclasse, podem acessar variáveis de instâncias privadas.
Os modificadores de acesso MA1, MA2 e MA3 são denominados, respectivamente:
Com base no código PHP abaixo, analise as assertivas a seguir, assinalando V, se verdadeiras, ou F, se falsas.

( ) A propriedade “$nome” está acessível diretamente fora da classe, pois é um atributo privado.
( ) O método “setNome” permite atribuir um valor à propriedade “$nome” de forma segura, seguindo o princípio do encapsulamento.
( ) A palavra-chave “private” impede o acesso ao atributo “$nome” diretamente por meio do objeto “$p”.
( ) O operador “$this->” é utilizado dentro da classe para referenciar os membros da própria instância.
( ) O código imprime a palavra "João" na tela.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
Considerando esses conceitos estruturantes, assinale a alternativa INCORRETA.
Com base nessa situação hipotética, assinale a opção que apresenta o princípio da programação orientada a objetos que fundamenta a recomendação do desenvolvedor sênior.
A classe Funcionario define um método calcularSalario() que é implementado de forma diferente em Gerente (com bônus de gestão) e Vendedor (com comissão de vendas). A capacidade de utilizar uma referência do tipo Funcionario para chamar o método calcularSalario() e ter a versão correta do método (Gerente ou Vendedor) sendo executada em tempo de execução, é uma característica fundamental do seguinte conceito da Orientação a Objetos: