Questões de Concurso
Sobre programação orientada a objetos em programação
Foram encontradas 892 questões
Assinale a alternativa que apresenta a anotação CORRETA que deve ser utilizada.
Analise o código Java, a seguir.


Fonte: dados do elaborador
Considerando a versão Java 25, é CORRETO afirmar que há utilização de:
Fonte: dados do elaborador
Assinale a alternativa CORRETA, em relação à saída produzida pela execução do código:
Em Programação Orientada a Objetos (POO), a sobrecarga de métodos ocorre quando um mesmo identificador representa várias implementações distintas (Deitel; Deitel, 2016). Embora os identificadores dos métodos sobrecarregados sejam os mesmos, suas assinaturas devem ser diferentes.
Considere o código Java a seguir:

Todas as alternativas representam uma sobrecarga válida do método somar da classe Calculadora, EXCETO:
I.Métodos estáticos podem acessar variáveis de instância diretamente sem a necessidade de instanciar um objeto, desde que estejam no mesmo pacote.
II.Um método declarado como final em uma classe pai não pode ser sobrescrito pelas subclasses, garantindo a integridade do comportamento definido.
III.Métodos não estáticos possuem implicitamente a referência "this", que permite acessar o estado interno do objeto específico que invocou o método.
Está correto o que se afirma em:
(__)Interfaces podem declarar atributos de instância com modificadores variados, incluindo privados e não finais.
(__)É possível utilizar a sintaxe InterfaceName.super.metodo() para invocar explicitamente um método default de uma interface.
(__)Se uma classe implementar duas interfaces que possuem métodos default com a mesma assinatura, ela deve sobrescrever o método para resolver o conflito.
Assinale a alternativa que apresenta a sequência correta:
I.A anotação @Override faz com que o compilador verifique se o método realmente sobrescreve um método da superclasse ou interface.
II.Caso um método anotado com @Override não corresponda a nenhum método da superclasse ou interface, ocorrerá erro de compilação.
III.A anotação @Override altera o comportamento do método em tempo de execução, permitindo otimizações na JVM.
É correto o que se afirma em:
Analise as afirmativas abaixo sobre a linguagem de programação Python e assinale a alternativa correta.
I. É uma linguagem que possui características de orientação a objetos.
II. Necessita de um compilador para gerar um programa executável.
III. É uma linguagem de tipagem estática.
IV. Os objetos precisam ser explicitamente destruídos (desalocados).
No contexto do desenvolvimento de um sistema corporativo em Java, um Analista de Sistemas está projetando uma hierarquia de classes para representar diferentes tipos de usuários em um sistema governamental. Durante a modelagem, foi estabelecido que determinados atributos e métodos de uma classe base:
• Devem ser acessíveis por outras classes que pertençam ao mesmo pacote.
• Devem ser acessíveis por subclasses, mesmo quando estas estiverem em pacotes distintos.
• Não devem ser acessíveis por classes que não sejam do mesmo pacote nem subclasses.
• Não podem possuir acesso irrestrito.
Considerando exclusivamente os modificadores de acesso da linguagem Java, assinale a alternativa que apresenta o modificador que atende integralmente a essas condições.
No contexto do desenvolvimento de um sistema orientado a objetos em Java, um Analista de Sistemas está implementando uma hierarquia de classes para representar diferentes tipos de operações financeiras em um sistema de uma agência de fomento. Durante a implementação, objetos das subclasses são manipulados por meio de referências da superclasse para permitir maior generalização. Em determinado ponto do sistema, torna-se necessário recuperar o tipo específico do objeto para acessar comportamentos exclusivos definidos na subclasse, realizando uma conversão explícita da referência genérica para uma mais específica. Considerando os conceitos de orientação a objetos, assinale a alternativa que representa CORRETAMENTE esse tipo de conversão.