Lista completa de Questões sobre Programação Orientada a Objetos para resolução totalmente grátis. Selecione os assuntos no filtro de questões e comece a resolver exercícios.
Com relação a herança na programação orientada a objetos com Java, é INCORRETO afirmar:
Uma subclasse herda os métodos da superclasse, entretanto, pode ter seus próprios métodos.
Quando se instancia um objeto da subclasse, podem ser passados valores para os atributos da superclasse.
Um objeto da subclasse pode ser um objeto da superclasse.
Em uma superclasse, para acessar métodos da subclasse deve ser usada a instrução super.
Para definir que a subclasse herda as características da superclasse utiliza-se a instrução extends na declaração da subclasse.
Sobre conceitos em programação orientada a objetos (OOP), analise:
I. No polimorfismo ad-hoc, métodos com o mesmo nome e pertencentes à mesma classe, podem receber argumentos distintos, consequentemente alterando a assinatura do método.
II. No polimorfismo paramétrico é possível determinar o método como atributos de objetos são acessados por outros objetos, protegendo o acesso direto aos mesmos através de operações.
III. Na restrição de multiplicidade é possível determinar o número de atributos e operações que uma classe pode herdar de uma superclasse.
Está correto o que consta em
I, II e III.
I, apenas.
III, apenas.
II e III, apenas.
I e II, apenas.
Na orientação a objetos, em uma relação de herança entre classes, a subclasse herda da superclasse
apenas as variáveis públicas de instância.
apenas os métodos e variáveis de instância públicos.
todas as variáveis de instância e apenas os métodos estáticos.
todas as variáveis e métodos, exceto os públicos e os que foram sobrescritos.
todas as variáveis de instância e os métodos, entretanto, podem explicitamente sobrescrever alguns destes componentes.
Considere que a classe Pessoa possui 3 métodos que podem ser aplicados aos seus objetos: cadastrar, alterar e excluir. Considere que Aluno e Professor são classes derivadas da classe Pessoa e, por isso, herdam os métodos cadastrar, alterar e excluir, mas estes métodos são sobrescritos na classe Aluno e Professor com implementações bastante distintas, em função dos dados associados a cada um deles.
O exemplo ilustra o conceito dehereditariedade.
polimorfismo.
encapsulamento.
abstração.
reusabilidade.
O processo de desenvolvimento orientado a testes, de uma forma geral, é baseado em 3 passos. Estes 3 passos são repetidos até que não se consiga pensar em novos testes, o que indicaria, então, que a funcionalidade está pronta. Um destes passos e o que nele deve ser feito está expresso corretamente em:
Refatore é o passo 3. Uma vez que o teste tenha passado, deve-se verificar o que pode ser melhorado no código e remover as duplicações. Essas melhorias no código, no entanto, devem permitir que os testes continuem passando.
Escreva um teste que falhe é o passo 2. Neste passo definem-se quais são as verificações que precisam ser feitas. Deve-se pensar primeiro no teste e só depois que este estiver pronto cria-se o código necessário para que ele compile e falhe ao ser executado.
Faça o teste passar é o passo 1. Neste passo escreve-se apenas código suficiente para que o teste passe. Mesmo que se saiba que o código deve fazer mais coisas, fazer os testes passarem deve ser a única preocupação nesta etapa.
Keep it simple é o passo 1. Como a solução vai surgindo pouco a pouco, a tendência é que não se perca tempo com aquilo que não se tem certeza que será usado em seguida, então, o foco deve estar no planejamento de testes simples.
Documente o teste é o passo 3. Os testes, quando bem definidos, são mais simples de ler que o código e, embora nem sempre sirvam como uma especificação para o usuário final, eles são uma fonte eficiente para entender o que o software faz. Além disso, esta documentação sempre estará atualizada com a aplicação.
Uma professora de uma universidade brasileira propôs aos seus alunos que seguissem os seguintes passos:
Passo 1: Identificar todos os substantivos que indiquem objetos.
Passo 2: Descartar os substantivos que, quando entidades, possuem apenas uma ocorrência.
Passo 3: Descartar os substantivos que servem apenas para entendimento do problema.
Passo 4: Descartar objetos que se referem a aplicações futuras.
Passo 5: Descartar objetos que não teriam nenhum atributo.
Passo 6: Listar os objetos que se tornarão entidades.
Passo 7: Identificar relacionamentos através da sentença: objeto verbo objeto.
Passo 8: Estabelecer o grau de relacionamento entre as entidades.
Passo 9: Estabelecer a cardinalidade do relacionamento entre as entidades.
Passo 10: Identificar os atributos de cada entidade.
A professora tinha a intenção de ensinar seus alunos a criarem um
Modelo de Arquitetura em Camadas.
Diagrama de Classes associado a um Diagrama de Objetos da UML.
Diagrama de Atividades da UML.
Modelo Entidade-Relacionamento.
Diagrama de Relacionamento entre Objetos e Entidades.
Considere a linguagem de programação PHP e seus operadores. A execução da sentença
(A != B) retorna falso (false), considerando as variáveis A e B inicializadas com os valores 3 e 6, respectivamente.
(A %= B) atribui o valor 3 (três) para a variável A, considerando as variáveis A e B inicializadas com os valores 10 e 3, respectivamente.
(A . = B) concatena o conteúdo das variáveis A e B e armazena o conteúdo em A.
!(A == B) retorna falso (false), considerando as variáveis A e B inicializadas com os valores 3 e 6, respectivamente.
(A = = = B) compara somente os tipos das variáveis A e B.
CSS; o fragmento II, um arquivo XML; e o fragmento III, o resultado do processamento do arquivo XML com a aplicação de um arquivo CSS, apresentado no fragmento de código I.
CSS; o fragmento II, um arquivo XML; e o fragmento III, apresenta o resultado do processamento do arquivo XML com a aplicação de um arquivo CSS, mas não o apresentado no fragmento de código I.
XML; o fragmento II, um arquivo CSS; e o fragmento III, o resultado do processamento do arquivo XML com a aplicação de um arquivo CSS, apresentado no fragmento de código I.
XML; o fragmento II, um arquivo CSS; e o fragmento III, apresenta o resultado do processamento do arquivo XML com a aplicação de um arquivo CSS, apresentado acima no fragmento de código I.
CSS; o fragmento II, um arquivo XML; e o fragmento III, apresenta o resultado do processamento que não envolve nenhum dos arquivos tratados nos exemplos.
Sobre Programação Orientada a Objetos, analise:
I. A encapsulação garante que apenas as interfaces necessárias para interação com o objeto estejam visíveis, e atributos internos não sejam acessíveis.
II. O polimorfismo garante que objetos possam herdar métodos e atributos de uma superclasse para a geração de uma nova classe.
III. A herança possibilita que distintas operações na mesma classe tenham o mesmo nome, desde que alterada a assinatura.
Está correto o que se afirma em
III, apenas.
II, apenas.
I, apenas.
II e III, apenas.
I, II e III.
8.8, 9.6.
9.6, 4.
2, 11.6.
4.8, 2.
11, 8.
{TITLE}
{CONTENT}
{TITLE}
Aguarde, enviando solicitação...