sábado, 26 de junho de 2010

UML e OO

01. (IEMA-2007/ES) - A utilização de metodologias consolidadas para representação de conceitos é considerada uma boa prática de programação. O uso da metodologia UML é um exemplo dessa boa prática. Considerando-se os conceitos de UML, julgue os itens seguintes.

01. Um caso de uso é uma coleção de cenários relacionados de sucesso e fracasso, que descrevem atores que usam um sistema como meio para atingir um objetivo.

Solução: Um caso de uso descreve um cenário de possivel interação com um utilizador ou um outro sistema. Cada caso de uso deve descrever somente uma funcionalidade ou objetivo do sistema.

GAB: CERTO

02. Diagrama de seqüência apresenta uma visão estática do sistema, ou seja, por meio dele não é possível a representação de interações entre atores e sistema para um conjunto específico de casos de uso.

Solução: O diagrama de sequência preocupa-se com a ordem temporal em que as mensagens são trocadas entre os objetos envolvidos em um determinado processo. Ilustra interações num formato de colunas. Identifica-se, na maioria das vezes, com um Caso de Uso específico, porque um Caso de Uso, em geral, refere-se a um processo disparado por um usuário. Os componentes utilizados em um diagrama de sequência são: atores, objetos, linha de vida, foco de controle ou ativação, mensagens ou estímulos, mensagens de retorno, auto-chamadas ou auto-delegações, condições ou condições de guarda.

GAB: ERRADO

03. Ator é uma entidade — pessoa ou sistema — , com comportamento, que interage com o sistema que se está projetando.

Solução: Os atores representam os papéis desempenhados pelos diversos usuários que poderão utilizar de alguma maneira os serviços e funções do sistema; eventualmente um ator pode representar algum hardware especial ou mesmo um outro software que interaja com o sistema, como no caso de um sistema integrado, por exemplo. Assim um ator pode ser qualquer elemento externo que interaja com o software.

GAB: CERTO

04. Diagramas de colaboração ilustram as interações entre objetos em forma de grafo ou rede, na qual os objetos podem ser colocados em qualquer lugar do diagrama.

Solução: O diagrama de colaboração (UML 1.5) agora é conhecido como diagrama de comunicação na UML 2.0. Ilustra interações num formato de grafo ou rede. Ele é muito semelhante ao diagrama de sequência e preocupa-se com a organização estrutural dos objetos, em como os objetos estão vinculados e as mensagens que estes trocam entre si. Os diagramas de sequência e colaboração apresentam tantas semelhanças que são conhecidos como Diagramas de Interação.

GAB: CERTO

05. Um diagrama de estado é uma representação pró-ativa dos estados e eventos de um sistema, ou seja, representa a previsão do estado interno do sistema em resposta aos possíveis eventos futuros que poderão ocorrer no sistema.

Solução: Este diagrama, que também era chamado de Diagrama de Gráfico de Estados, ganhou uma nomenclatura nova a partir da UML 2.0: Diagrama de Máquina de Estados. Ele procura acompanhar as mudanças de estados sofridas por um objeto dentro de um determinado processo. O estado representa a situação em que um objeto está em um determinado momento durante o período em que este participa de um processo. Um objeto pode passar por diversos estados dentro de um mesmo processo. Um estado pode demonstrar:

· A espera pela ocorrência de um evento;

· A reação a um estímulo;

· A execução de alguma atividade;

· A satisfação de alguma condição.

GAB: ERRADO

02. (CETRO-TRT-SC/2008) Considere o Diagrama de Classes a seguir:



Em relação ao diagrama apresentado é possível deduzir algumas informações, exceto que uma instância de

(A) Setor está associada a pelo menos uma instância de Funcionario.

(B) Funcionario está associada a somente uma instância de Setor.

(C) Funcionario está associada a somente uma instância de Dependente.

(D) Dependente está associada a somente uma instância de Funcionario.

(E) Setor não está associada a nenhuma instância de Dependente.

Solução: Em diagramas de classe UML, uma classe é apresentada como uma caixa com três seções: a seção superior fornece o nome da classe, a seção do meio, os atributos para os objetos individuais da classe, e a última seção mostra as operações que podem ser aplicadas a esses objetos. A notação (min, max) é usada para especificar as restrições de relacionamento, que são chamadas multiplicidades na terminologia UML. As multiplicidades são especificadas na forma min...max e um asterisco (*) indica que não há limite máximo na participação. Na figura acima temos que:

· Um setor possui um ou mais funcionários e um funcionário pertence a apenas um setor

· Um funcionário tem zero ou muitos dependentes e um dependente pertence a apenas um funcionário.

GAB: C

03. (FCC – TRT – GO/2008) São dois conceitos utilizados especificamente nos modelos orientados a objetos:

(A) fluxo de dados e herança.

(B) entidade externa e classe.

(C) método e polimorfismo.

(D) seleção e processo.

(E) depósito de dados e relacionamento.

Solução: Fazem parte dos conceitos essenciais da orientação a objetos: classe, subclasse, objeto, atributo, método, mensagem, herança, associação, encapsulamento, abstração, polimorfismo, interface.

GAB: C

04. (FCC – TRT – GO/2008) O acesso aos atributos e operações das classes somente por intermédio de serviços (mensagens) que conhecem suas interfaces é uma proteção garantida

(A) pela subclasse.

(B) pela herança.

(C) pelo balanceamento.

(D) pela agregação.

(E) pelo encapsulamento.

Solução: O encapsulamento consiste na separação de aspectos internos e externos de um objeto. Este mecanismo é utilizado amplamente para impedir o acesso direto ao estado de um objeto (seus atributos), disponibilizando externamente apenas os métodos (operações) que alteram estes estados.

Encapsulamento vem de encapsular, que em programação orientada a objetos significa separar o programa em partes, o mais isoladas possível. A idéia é tornar o software mais flexível, fácil de modificar e de criar novas implementações.

Para exemplificar, podemos pensar em uma dona de casa (usuário) utilizando um liquidificador (sistema). O usuário não necessita conhecer detalhes do funcionamento interno do sistema para poder utilizá-lo, precisa apenas conhecer a interface, no caso, os botões que controlam o liquidificador.

Uma grande vantagem do encapsulmento é que toda parte encapsulada pode ser modificada sem que os usuários da classe em questão sejam afetados. No exemplo do liquidificador, um técnico poderia substituir o motor do equipamento por um outro totalmente diferente, sem que a dona de casa seja afetada - afinal, ela continuará somente tendo que pressionar o botão.

GAB: E

05. (FCC – TRT – GO/2008) Na associação entre classes, o número de instâncias de uma classe que pode se relacionar com outra é definido

(A) unicamente pela quantidade de objetos contidos na classe-mãe.

(B) nas operações das classes.

(C) nos atributos das classes.

(D) pela multiplicidade.

(E) pela quantidade de características mutuamente herdadas.

Solução: De acordo com a questão 2, a resposta é a letra D.

GAB: D

06. (FCC – TRT – GO/2008) São dois tipos de relacionamento todo-parte:

(A) agregação e composição.

(B) generalização e composição.

(C) generalização e especialização.

(D) composição e dependência.

(E) especialização e agregação.

Solução: Os tipos de relacionamento todo-parte descrevem a relação entre objetos: a parte e o todo.

· Agregação – As partes podem existir sozinhas. Exemplo: carro (todo) e rodas (parte). Você pode tirar as rodas do carro antes de destruí-lo e elas podem ser colocadas em outro carro.

· Composição – As partes não podem existir sozinhas. Exemplo: pedido (todo) e itens (parte). Se você destruir o pedido, destrói os itens também. Eles não têm sentido fora do pedido.

GAB: A

07. (FCC – TRT – GO/2008) Em um diagrama de classes, considere que Seguridade e Imóveis herdam características de Ativos. A classe ItemSuportado é super-classe de Imóveis mas não de Ativos. Nesse cenário, o relacionamento geral em que se envolve Imóveis caracteriza-se por

(A) ocultação.

(B) herança múltipla.

(C) dependência.

(D) polimorfismo.

(E) composição.

Solução: Quando uma classe, como a de imóveis, herda características de mais de uma classe (suas superclasses), temos a herança múltipla. Veja um exemplo de herança múltipla abaixo:




GAB: B

08. (FCC – TRT – GO/2008) Se em algum ponto de um Caso de Uso houver a necessidade de inserir incondicionalmente um cenário contido em outro Caso, deve-se usar o relacionamento de dependência estereotipado como

(A) realize.

(B) extend.

(C) generalize.

(D) enumeration.

(E) include.

Solução: As associações representam as interações ou relacionamentos entre os atores que fazem parte do diagrama, entre os atores e os Casos de Uso ou os relacionamentos entre os Casos de Uso e outros Casos de Uso. A associação entre um ator e um Caso de Uso é representada por uma reta ligando o ator ao Caso de Uso, podendo ocorrer que as extremidades da reta contenham setas, indicando a navegabilidade da associação. Isso pode ser visot mais abaixo, na associação entre Vendedor e Processar pedido.

Os relacionamentos entre Casos de Uso recebem nomes especiais como Inclusão, Extensão, Generalização.

·Especialização/Generalizaçã– O relacionamento é uma forma de associação entre Casos de Uso na qual existem dois ou mais Casos de Uso com características semelhantes, apresentando pequenas diferenças entre si. Quando tal situação ocorre, costuma-se definir um Caso de Uso Geral que descreve as características compartilhadas por todos os Caos de Uso em questão e então relacioná-lo com os outros Casos de Uso envolvidos, cuja documentação conterá somente as características específicas de cada um. Estes conceitos valem também para classes, onde a superclasse (Mamíferos, no exemplo) representa a generalização das subclasses e as subclasses (Homem, Cão e Gato, no exemplo) representam a especialização da superclasse.











· Inclusão – A associação de Inclusão costuma ser utilizada quando existe um serviço, situação ou rotina comum a mais de um Caso de Uso. Quando isso ocorre, a documentação dessa rotina é colocada num Caso de Uso específico para que outros Casos de Uso utilizem-se desse serviço, evitando-se descrever uma mesma sequência de passos em vários Casos de Uso. Os relacionamentos de Inclusão indicam uma obrigatoriedade, ou seja, quando um determinado Caso de Uso possui um relacionamento de Inclusão com outro, a execução do primeiro obriga também a execução do segundo. Uma associação de Inclusão é representada por uma reta tracejada contendo uma seta em uma de suas extremidades que aponta para o Caso de Uso incluído no Caso de Uso posicionadado do outro lado da reta. As associações de Inclusão costumam apresentar também um Estereótipo contendo o texto include, entre dois sinais de menor e dois sinais de maior (include).




·Extensão – Associações de Extensão são utilizadas para descrever cenários opcionais de um Caso de Uso. Os Casos de Uso estendidos descrevem cenários que somente ocorrerão em uma situação específica, se uma determinada condição for satisfeita. Assim, as associações de Extensão indicam a necessidade de um teste para determinar se é necessário executar também o Caso de Uso estendido ou não. Relacionamentos de Extensão representam eventos que não ocorrem sempre, o que não significa que eles sejam incomuns. As associações de Extensão possuem uma representação muito semelhante às associações de Inclusão, sendo também representadas por uma reta tracejada, diferenciando-se pelo fato da seta apontar para o Caso de Uso que utiliza o caso de Uso estendido e por possuir um Estereótipo contendo o texto extend entre dois sinais de menos e dois de maior (extend).







GAB: E

09. (FCC – TRT – GO/2008) Atividade, Caso de Uso e Componente são diagramas da UML 2.0 classificados, respectivamente, no âmbito

(A) comportamental, comportamental e comportamental.

(B) comportamental, estrutural e estrutural.

(C) comportamental, comportamental e estrutural.

(D) estrutural, comportamental e estrutural.

(E) estrutural, estrutural e comportamental.

Solução: Os diagramas da UML 2.0 dividem-se em:

· Diagramas Estruturais

o Diagrama de classes

o Diagrama de objetos

o Diagrama de componentes

o Diagrama de instalação

o Diagrama de pacotes

o Diagrama de estrutura

·Diagramas Comportamentais

o Diagrama de Casos de Uso

o Diagrama de Transição de Estados ou Máquina de Estados

o Diagrama de Atividades

· Diagramas de Interação

o Diagrama de Sequência

o Diagrama de Interatividade

o Diagrama de Colaboração ou Comunicação

o Diagrama de Tempo

GAB: C

10. (FCC – TRT – GO/2008) Na notação original da UML 2.0, os símbolos + (mais) e # (jogo da velha), antecedendo as operações de uma classe, caracterizam tais operações, respectivamente, como

(A) pública e protegida.

(B) protegida e privada.

(C) pública e privada.

(D) pacote e protegida.

(E) pública e pacote.

Solução: Na UML 2.0, os símbolos +, - e # representam a visibilidade de um atributo ou método de uma classe. A visibilidade indica se o atributo pode ser visualizado por outras classes além da própria.

· Pública (+): pode ser visto e usado por outras classes.

· Privada (-): não pode ser acessado por outras classes.

· Protegida (#): pode ser acessado por subclasses da classe a que pertence.

GAB: A

11. (FCC – TRT – MS/2004) Analise as seguintes afirmações sobre o paradigma da Orientação a Objetos.

I. Em uma relação de AGREGAÇÃO entre objetos − estrutura do tipo Todo-Parte, se “A” agrega “B”, então “B” é part-of “A”, porém seus tempos de vida são independentes.

II. Em uma relação de COMPOSIÇÃO entre objetos − estrutura do tipo Todo-Parte, se “A” é composto de “B”, então “A” controla o tempo de vida de “B”.

III. Na notação UML, este diagrama indica que cada instância da classe "A" deve ser associada com 1 ou muitas instâncias da classe "B".

É correto o que se afirma em

(A) I e II, apenas.

(B) I e III, apenas.

(C)) I, II e III.

(D) II, apenas.

(E) III, apenas

Solução: De acordo com as questões 02 e 06, todos os itens estão certos.

GAB: C

12. (FCC – TRT – MS/2004) Analise as definições abaixo no âmbito do paradigma da Orientação a Objetos.

I. Habilidade de uma operação ter a mesma assinatura, mas diferentes implementações e, possivelmente, diferentes semânticas, em diferentes classes.

II. Habilidade de uma subclasse especializar uma operação herdada, redefinindo a implementação da operação, mas não a sua especificação (assinatura).

Estas definições não esgotam as possíveis, porém estão corretas e são específicas quanto ao conceito de

(A) Agregação.

(B) Composição.

(C) Cardinalidade.

(D) Persistência.

(E))Polimorfismo.

Solução: De acordo com a questão 06, as letras A e B são falsas.

Cardinalidade ou multiplicidade (questão 02) – determina quantos objetos são possíveis em cada vértice da associação. (C é falsa)

Persistência – é a forma pela qual a orientação a objetos guarda informações de seus objetos em memória não-volátil para posterior recuperação, quando necessário. Costuma-se fazer persistências de objetos em bancos de dados que ficam armazenados em disco rígido. (D é falsa)

Polimorfismo – Segundo a terminologia de orientacão a objetos, polimorfismo significa que uma mesma mensagem enviada a diferentes objetos resulta em um comportamento que é dependente da natureza do objeto que está recebendo a mensagem. Ou seja, duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma assinatura (nome, lista de parâmetros e retorno), mas comportamentos distintos, especializado para cada classe derivada, usando para tanto uma referência a um objeto do tipo superclasse. Algumas linguagens promovem o polimorfismo principalmente por meio do uso de classes abstratas e interfaces.

GAB: E

13. (FCC – TRT – MS/2004) A Unified Modeling Language − UML provê uma série de diagramas. Alguns descrevem situações do ponto de vista estático ou estrutural. Outros descrevem situações do ponto de vista dinâmico ou comportamental. Dentre aqueles que descrevem situações do ponto de vista estático ou estrutural encontram-se os diagramas ..I.. enquanto que, dentre aqueles que descrevem situações do ponto de vista dinâmico ou comportamental encontram-se os diagramas ..II.. .

Completa-se corretamente o texto acima substituindo-se I e II por:



Solução: De acordo com a questão 09, a certa é a letra D.

GAB: D

14. (FCC – TRT – MS/2004) Dados os diagramas abaixo:














Os diagramas 1, 2 e 3 estão corretamente identificados em:



Solução: De acordo com a questão 04 de Análise e Projeto, o diagrama 1 é o Diagrama de fluxo de dados (DFD).

De acordo com a questão 08, o diagrama 2 é o Diagrama de Caso de Uso (DCU).

Resta-nos concluir que o diagrama 3 é o Diagrama de Transição de Estados (DTE) ou Máquina de Estados (UML 2.0)

GAB: A

15. (FCC – TRT – CE/2009 - Analista) Na sua forma plena, a sintaxe de uma operação na UML inclui apenas

(A) visibilidade, nome, lista de parâmetros, tipo de retorno e propriedades.

(B) visibilidade e nome.

(C) nome e lista de parâmetros

(D) visibilidade, nome e lista de parâmetros

(E) visibilidade, nome, tipo de retorno e propriedades.

Solução: A sintaxe completa de uma operação é: [visibility] nome [(parameter-list)] [:return type] [{propertystring}].

GAB: A

16. (FCC – TRT – CE/2009 - Analista) Na UML, as classes A e B legam suas estruturas e comportamentos à classe C. Considerando apenas o fato apresentado nessa circunstância, é correto afirmar que aí se aplica tipicamente o conceito de

(A) multiplicidade

(B) delegação

(C) derivação

(D) herança múltipla

(E) método polimórfico

Solução: O segredo desta questão está em traduzir o significado do verbo legar. Legar significa deixar por herança. De acordo com a questão 07 também, a resposta é a letra D.

GAB: D

17. (FCC – TRT – CE/2009 - Analista) Uma parte física e substituível de um sistema com o qual está em conformidade e proporciona a realização de um conjunto de artefatos (UML) é um

(A) objeto.

(B) componente.

(C) atributo.

(D) método.

(E) caso de uso.

Solução: Observe o significado de cada letra:

· Objeto – é um membro, instância de uma classe, armazenado em memória, que representa uma categoria. Por meio dele é possível acessar as funcionalidades disponibilizadas pela classe. (A é falsa)

· ComponentePeça física distribuível e substituível de código e que contém elementos que apresentam um conjunto de interfaces requeridas e fornecidas. Cada arquivo que compõe o sistema pode ser considerado um componente. Os componentes são representados por um retângulo principal, contendo o nome do módulo que ele representa com dois retângulos menores sobressaindo-se à sua esquerda. (B é verdade)





Diagrama de componentes

· Atributo – representa uma característica de uma classe, ou seja, uma peculiaridade que costuma variar de objeto para objeto. (C é falsa)

· Método – Também conhecido como comportamento, representa uma atividade que um objeto de uma classe pode executar. Quando se diz que um objeto é a instância de uma classe, diz-se que este objeto implementa a interface definida pela classe. O objeto herda a estrutura de dados da classe e seus métodos. (D é falsa)

· Caso de uso – Compõe o Diagrama de Casos de Uso. Os Casos de Uso referem-se aos serviços, tarefas ou funções que podem ser utilizados de alguma maneira pelos usuários do sistema. (E é falsa)

GAB: B

18. (FCC – TRT – CE/2009 - Analista) Na UML, uma lista de valores nomeados, utilizada como a faixa de um determinado tipo de atributo, trata-se de

(A) instância

(B) multiplicidade

(C) enumeração

(D) valor atributo

(E) agregação

Solução: Observe o significado de cada letra:

· Instância – Visto na questão 17. (A é falsa)

· Multiplicidade – Visto na questão 12. (B é falsa)

· Enumeração – É uma lista simples de valores. As opções de uma enumeração são chamadas Literais de Enumeração. (C é verdadeira)

· Valor atributo – É o valor de uma característica de um objeto, como visto na questão 17. (D é falsa)

· Agregação – Visto na questão 06. (D é falsa)

GAB: C

19. (FCC – TRT – MA/2009 - Analista) Um analista desenvolveu métodos de impressão de dados com a mesma assinatura para três classes de impressoras (jato de tinta, laser e matricial) derivadas de uma mesma superclasse impressora. Tal prática

(A) aplica o conceito de herança múltipla.

(B) aplica o conceito de polimorfismo.

(C) constitui-se em ferimento à regra de herança.

(D) visa ao aumento da coesão entre os atributos da superclasse.

(E) não é recomendada na orientação a objetos.

Solução: De acordo com a questão 12, a resposta é a letra B.

GAB: B

20. (FCC – TRT – MA/2009 - Analista) A utilização de um sistema orientado a objetos não deve depender de sua implementação interna, mas sim de sua ..I.. . Isso protege os elementos internos de uma classe e é o que define o ..II.., que determina, também, que os atributos da classe só podem ser acessados e atualizados por suas ..III.. .

Completa correta e respectivamente as lacunas I, II e III:

(A) programação; método; mensagens.

(B) interface; encapsulamento; operações.

(C) operação; algoritmo; interfaces.

(D) programação; método; heranças.

(E) classificação; encapsulamento; interfaces

Solução: Interface é um contrato entre a classe e o mundo externo. Quando uma classe implementa uma interface, ela está comprometida a fornecer o comportamento publicado pela interface.

De acordo com a questão 04, o item II é o encapsulamento e o III são as operações.

GAB: Só com as respostas do II e III já respondemos a questão por eliminação: B

21. (FCC – TRT – MA/2009 - Analista) Um analista necessita definir uma associação entre classes onde uma delas, sendo parte da outra, tem sua vida controlada por aquela da qual faz parte. Esta associação é tipicamente uma

(A) estereotipação.

(B) enumeração.

(C) composição.

(D) dependência.

(E) realização.

Solução: De acordo com a questão 06, a resposta é a letra C.

GAB: C

22. (FCC – TRT – MA/2009 - Analista) Considere um Caso de Uso Base – UCB – que represente o atendimento a um trabalhador para uma reclamação trabalhista. Entretanto, na ocorrência de uma determinada condição como, por exemplo, “o reclamante tem precedentes judiciais”, um outro Caso de Uso – UCS – envia um comportamento ao UCB. Nessa situação, a UML representa o relacionamento de UCB com UCS como

(A) exceção

(B) extensão

(C) generalização

(D) agregação

(E) inclusão

Solução: De acordo com a questão 08, a resposta é a letra B.

GAB: B

23. (FCC – TRT – MA/2009 - Analista) Considere diversas agências (classe Agencia) de atendimento a reclamações trabalhistas espalhadas em vários pontos do Estado. Uma delas, a central (classe AgenciaCentral), tem atributos diferenciados, porém herda os demais atributos e operações de Agência. O relacionamento entre essas classes é definido na UML como

(A) inclusão

(B) composição

(C) específico

(D) generalização

(E) encapsulamento

Solução: De acordo com a questão 08, a resposta é a letra D.

GAB: D

24. (FCC – TRT – PB/2005 - Analista) São dois diagramas estruturais da UML o diagrama de

(A) Objetos e o de Atividades.

(B) Atividades e o de Seqüência.

(C) Comunicação e o de Classes.

(D) Estados e o de Componentes.

(E)) Implantação e o de Componentes.

Solução: De acordo com a questão 09, a resposta é a letra E.

GAB: E

25. (FCC – TRT – PB/2005 - Analista) Na orientação a objeto, o corpo de código que implementa uma operação de uma classe é conhecido por

(A) atributo.

(B) objeto.

(C)) método.

(D) herança.

(E) agregação.

Solução: De acordo com a questão 17, a resposta é a letra C.

GAB: C

26. (FCC – TRT – PB/2005 - Analista) Na orientação a objetos, as relações do tipo Generalização/Especialização (is-a) são uma propagação de atributos e operações baseadas em uma relação entre classes inerentes ao conceito de

(A) persistência.

(B) composição.

(C) polimorfismo.

(D) agregação.

(E)) herança.

Solução: De acordo com as questões 06 e 12, eliminamos as letras A, B, C e D.

A herança é um mecanismo que permite criar novas classes a partir de classes já existentes, aproveitando-se das características existentes na classe a ser estendida. Com a herança é possível criar classes derivadas (subclasses) a partir de classes bases (superclasses).

As subclasses herdam todas as características de suas superclasses, como suas variáveis (estado) e seus métodos (comportamento). Entretanto, as subclasses não estão limitadas ao comportamento herdado de sua superclasse. As subclasses podem adicionar variáveis e métodos àqueles herdados.

As subclasses, também, podem redefinir (override) métodos herdados e oferecer implementações especializadas para estes métodos.

GAB: E

27. (FCC – TRT – PR/2004 - Analista) De acordo com os conceitos do paradigma da Orientação a Objetos, todos os objetos são membros de uma classe mais ampla e ..I.. a estrutura de dados ..II.. particulares que foram definidas para essa classe. Portanto, um objeto individual é ..III.. de uma classe mais ampla.

Preenchem corretamente as lacunas I, II e III acima:





Solução: De acordo com a questão 17, a resposta é a letra E.

GAB: E

28. (FCC – TRT – PR/2004 - Analista) De acordo com o Object Management Group – OMG, no diagrama a seguir, a classe de objetos denominada “Forma”, representa:




(A)) a generalização das classes de objeto Polígono e Elipse.

(B) o polimorfismo da classe de objeto Polígono e a herança da classe de objeto Elipse.

(C) a herança múltipla das classes de objeto Polígono e Elipse.

(D) a herança da classe de objeto Polígono e o polimorfismo da classe de objeto Elipse.

(E) a especialização das classes de objeto Polígono e Elipse.

Solução: De acordo com a questão 08, a resposta é a letra A.

GAB: A

29. (FCC – TRT – SP/2008 - Analista) Em uma hierarquia de classes é possível especificar operações com a mesma assinatura em pontos diferentes da hierarquia. Portanto, essas operações presentes nas classes-filha

(A) anulam o comportamento das operações existentes nas classes-mãe.

(B) herdam os atributos existentes nas classes-mãe.

(C) são composições de alguns atributos existentes nas classes-mãe.

(D) complementam o comportamento das operações existentes nas classes-mãe.

(E) agregam as operações existentes nas classes-mãe.

Solução: Completando o conceito de polimorfismo da questão 12, as operações herdadas da superclasse para as subclasses podem ser reescritas na subclasse, anulando o comportamento das operações da superclasse nas classes-filhas.

GAB: A

30. (FCC – TRT – SP/2008 - Analista) Na UML, a multiplicidade

(A) é aplicada aos atributos, somente.

(B) aplicada a uma classe é o número de instâncias que esta pode ter.

(C) indica a quantidade de atributos herdados por uma classe-filha em uma hierarquia de classes.

(D) aplicada nas associações entre classes indica o número de atributos comuns às classes envolvidas.

(E) aplicada a uma classe concreta é o número de operações que esta pode ter.

Solução: De acordo com a questão 02, a resposta é a letra B.

GAB: B

31. (FCC – TRT – SP/2008 - Analista) Dos diagramas definidos na UML 2.0, é aplicado na modelagem do comportamento de uma interface, classe ou colaboração, o Diagrama de

(A) Componente.

(B) Objeto.

(C) Estrutura Composta.

(D) Pacote.

(E) Estado de Máquina.

Solução: De acordo com a questão 09, o único diagrama comportamental das alternativas é o Diagrama de Máquina de Estados.

GAB: E

32. (FCC – TRT – SP/2008 - Analista) As instâncias de uma classe são

(A) seus atributos.

(B) suas superclasses.

(C) suas operações.

(D) seus objetos.

(E) seus relacionamentos.

Solução: De acordo com a questão 17, a resposta é a letra D.

GAB: D

33. (FCC – TRT – SP/2008 - Analista) Em um diagrama de Caso de Uso são admitidos os relacionamentos

(A) dependência, somente.

(B) dependência e generalização, somente.

(C) dependência, generalização e associação.

(D) associação, somente.

(E) dependência e associação, somente.

Solução: De acordo com a questão 08, existem os relacionamentos associação, generalização e dependência (inclusão e extensão).

GAB: C

34. (FCC – TRT – SP/2008 - Analista) Um cubo, graficamente na UML, é um elemento físico existente em tempo de execução que representa um recurso computacional com pelo menos alguma memória, e, freqüentemente, com capacidade de processamento. Trata-se de

(A) pacote.

(B) nó.

(C) interface.

(D) objeto.

(E) nota.

Solução: Este é conceito de nó. Um nó é uma peça física de equipamento, na qual o sistema será disponibilizado, por exemplo uma estação de trabalho ou um servidor. O nó geralmente contém os componentes e outras partes executáveis do código, que podem ser ligados a processos em particular ou espaços de execução. O nós são usados nos diagramas de implantação, para modelar o deploy de um sistema, e para ilustrar a alocação física dos artefatos implementados. Graficamente é representado como um cubo.

GAB: B

35. (IEMA-2007/ES) De acordo com os conceitos envolvendo o paradigma de programação orientada a objetos, julgue os itens que se seguem.

01. Um objeto é a representação em memória de uma classe. Por meio dele é possível acessar as funcionalidades disponibilizadas pela classe.

Solução:

De acordo com a questão 17, o item está certo.

GAB: CERTO

02. Por meio do encapsulamento, é possível restringir ou liberar o acesso a determinados atributos de uma classe.

Solução: De acordo com a questão 04, o item está certo.

GAB: CERTO

03. Polimorfismo é a capacidade de uma classe assumir comportamento diferenciado durante o período de execução do programa.

Solução: De acordo com a questão 12, o item está errado.

GAB: ERRADO

04. O construtor e o destruidor de uma classe permitem ao programador, respectivamente, declarar ou remover atributos da classe antes que estes sejam utilizados no decorrer da execução de programa.

Solução: Conceitualmente, a instância possui duas propriedades fundamentais: a classe a partir da qual foi criada, que define suas propriedades e métodos padrões, e um estado, que representa o conjunto de valores das propriedades e métodos definidos naquela instância específica. A instância possui um ciclo de vida: é criada (e neste momento seu construtor é invocado), manipulada conforme necessário, e destruída (pelo destruidor) quando não for mais útil para o programa. O estado da instância evolui ao longo do seu ciclo de vida: seus atributos são definidos e têm seu valor alterado através de seus métodos e de manipulação realizada por outros objetos.

GAB: ERRADO

05. Uma classe abstrata é utilizada para disponibilizar uma interface comum a cada subclasse que implementa essa interface.

Solução: Suponha que vamos criar várias classes que têm métodos em comum e outros métodos funcionam diferente para cada classe. Uma forma de fazer isso é usar as classes abstratas.

· As classes abstratas tem pelo menos um método abstrato, ou seja um método que não tem corpo.

· Se um método tem uma classe abstrata ele deve ser declarado como um método abstrato.

· Não podem ser criadas instâncias de classes abstratas.

· Ao criar uma classe usando uma classe abstrata como herança devem ser criados os corpos para os métodos abstratos.

Interfaces podem ser entendidas como um tipo de classe abstrata em que todos os métodos são abstratos.

· Em uma interface nenhum método tem corpo e são implicitamente abstratas e públicas

· Assim como uma classe abstrata , uma interface não pode ser instanciada.

· Uma classe pode implementar mais de uma interface

· Uma interface não pode conter um construtor.

· Ao criar uma classe usando uma interface devem ser feitos os corpos de todos os métodos da interface, caso contrario deverá ser criada uma classe abstrata.

GAB: CERTO



Nenhum comentário:

Postar um comentário