Prévia do material em texto
Diagrama de classes 1. O que representa um diagrama de classes na modelagem de sistemas orientados a objetos? a) O comportamento dinamico do sistema b) A relacao entre as classes e seus metodos c) A estrutura estatica das classes, seus atributos e os relacionamentos entre elas d) O processo de instalacao do software Resposta correta: c) O diagrama de classes e uma representacao estatica de um sistema orientado a objetos. Ele mostra as classes, seus atributos, metodos e os relacionamentos entre elas, como associacoes, herancas e dependencias. Ele ajuda a entender como os objetos interagem dentro do sistema. 2. Qual e a funcao principal de um atributo em um diagrama de classes? a) Definir o comportamento do sistema b) Representar as caracteristicas ou propriedades dos objetos de uma classe c) Mostrar a interacao entre as classes d) Descrever os relacionamentos entre os objetos Resposta correta: b) Os atributos representam as propriedades ou caracteristicas dos objetos que pertencem a uma classe. Por exemplo, se tivermos uma classe "Carro", seus atributos podem ser "cor", "modelo" e "ano de fabricacao". Eles ajudam a definir o estado de um objeto. 3. Em um diagrama de classes, o que um metodo descreve? a) A relacao entre dois objetos b) As acoes ou comportamentos que os objetos de uma classe podem realizar c) As propriedades de uma classe d) A forma como as classes se comunicam com o banco de dados Resposta correta: b) Os metodos sao funcoes ou operacoes que definem o comportamento dos objetos de uma classe. Eles determinam o que os objetos dessa classe podem fazer, como "acelerar" ou "frear" no exemplo de uma classe "Carro". 4. Como a heranca e representada em um diagrama de classes? a) Atraves de uma linha pontilhada b) Por meio de uma linha solida com uma seta apontando para a classe pai c) Por uma linha reta, sem nenhuma indicacao de direcao d) Com uma linha curva conectando as classes Resposta correta: b) A heranca e representada em um diagrama de classes por uma linha solida com uma seta apontando para a classe pai (superclasse). Isso indica que a classe filha herda os atributos e metodos da classe pai, podendo tambem adicionar novos atributos ou metodos. 5. Qual e o significado de uma associacao entre duas classes no diagrama de classes? a) Uma classe e um tipo de outra classe b) As classes compartilham comportamentos c) As classes estao de alguma forma relacionadas ou interagem entre si d) As classes sao dependentes uma da outra, mas nao interagem diretamente Resposta correta: c) Uma associacao entre duas classes indica que existe algum tipo de relacao ou interacao entre elas. Por exemplo, uma classe "Aluno" pode estar associada a uma classe "Curso", representando que um aluno pode se matricular em um curso. A associacao e geralmente representada por uma linha entre as classes, podendo ter multiplicidade para indicar quantos objetos de uma classe podem se associar a outra. 6. O que e um "multiplicidade" em um diagrama de classes? a) O numero de metodos presentes em uma classe b) O numero de instancias que uma classe pode ter c) O numero de objetos que podem estar envolvidos em uma associacao d) O numero de classes que podem herdar de uma classe pai Resposta correta: c) Multiplicidade define o numero de instancias de uma classe que podem estar associadas a outra. Por exemplo, uma associacao entre "Professor" e "Aluno" pode ter multiplicidade "1..*", indicando que um professor pode ter varios alunos, mas cada aluno tem um unico professor. 7. O que caracteriza uma "classe abstrata" em um diagrama de classes? a) Uma classe que nao pode ser instanciada diretamente b) Uma classe que possui somente metodos concretos c) Uma classe que nao possui atributos d) Uma classe sem metodos, apenas com atributos Resposta correta: a) Uma classe abstrata e aquela que nao pode ser instanciada diretamente. Ela serve como uma base para outras classes, que devem herdar dela e implementar os metodos abstratos. As classes abstratas sao representadas por um nome em italico no diagrama de classes. 8. O que e uma "interface" em um diagrama de classes? a) Uma classe que nao pode ser herdada b) Um tipo especial de classe que define um conjunto de metodos a serem implementados por outras classes c) Uma classe com atributos privados d) Uma representacao visual do comportamento do sistema Resposta correta: b) Uma interface define um contrato que outras classes devem seguir, implementando os metodos declarados na interface. Ela nao possui implementacao de metodos, apenas as assinaturas, e e representada por um nome em italico e, em alguns casos, por um estereotipo >. 9. Qual e a diferenca entre "composicao" e "agregacao" em um diagrama de classes? a) Na composicao, a classe "parte" pode existir independentemente da classe "todo"; na agregacao, ela nao pode b) Na agregacao, a classe "parte" pode existir independentemente; na composicao, ela nao pode c) A composicao e usada apenas em classes abstratas, enquanto a agregacao e para classes concretas d) Nao existe diferenca, sao representacoes iguais Resposta correta: b) Na agregacao, a classe "parte" pode existir independentemente da classe "todo". Por exemplo, um "Carro" pode ter varios "Motoristas", mas se o carro for destruido, os motoristas podem continuar existindo. Na composicao, a parte nao pode existir sem o todo, como no caso de "Sala" e "Edificio", onde a sala nao faz sentido sem o edificio. 10. O que representa uma "dependencia" entre duas classes em um diagrama de classes? a) Uma classe e um subtipo de outra b) Uma classe depende da outra para funcionar, mas sem uma relacao forte c) As classes possuem um relacionamento direto e permanente d) As classes tem os mesmos atributos e metodos Resposta correta: b) A dependencia indica que uma classe depende de outra para executar alguma operacao, mas sem uma relacao forte. Em um diagrama de classes, a dependencia e geralmente representada por uma linha pontilhada com uma seta na direcao da classe da qual a dependencia se origina. 11. Como a visibilidade de um atributo ou metodo e representada em um diagrama de classes? a) Por uma cor de fundo na classe b) Com simbolos que indicam se sao publicos, privados ou protegidos c) Usando uma linha de diferentes espessuras d) Nao e representada, apenas as classes sao mostradas Resposta correta: b) A visibilidade de atributos e metodos e representada por simbolos especificos. O simbolo "+" indica que o atributo ou metodo e publico, "-" indica que e privado, e "#" indica que e protegido. Essas notacoes ajudam a entender o nivel de acesso a cada elemento dentro da classe. 12. O que e uma "subclasse" em um diagrama de classes? a) Uma classe que herda atributos e metodos de outra classe b) Uma classe que e independente de todas as outras c) Uma classe que possui somente metodos concretos d) Uma classe que representa uma interface Resposta correta: a) Uma subclasse e uma classe que herda atributos e metodos de uma classe pai ou superclasse. A subclasse pode tambem adicionar novos atributos ou metodos e sobrescrever os metodos da classe pai. 13. O que indica a presenca de um relacionamento "muitos para muitos" em um diagrama de classes? a) Que cada instancia de uma classe esta associada a uma unica instancia de outra classe b) Que multiplas instancias de uma classe estao associadas a multiplas instancias de outra classe c) Que uma classe e dependente de varias outras classes d) Que uma classe herda varias caracteristicas de uma superclasse Resposta correta: b) Um relacionamento "muitos para muitos" indica que multiplas instancias de uma classe podem estar associadas a multiplas instancias de outra classe. Por exemplo, um "Aluno" pode estar matriculado em varios "Cursos", e um "Curso" pode ter varios "Alunos". Esse relacionamento e normalmente representado por uma linha entre as classes com multiplicidade "1.." ou "..*". 14. Qual e a principal vantagemde usar diagramas de classes no desenvolvimento de software? a) Eles ajudam a visualizar a estrutura do banco de dados b) Facilitam a analise do comportamento do sistema em tempo real c) Permitem entender a organizacao e os relacionamentos das classes, facilitando o desenvolvimento e a manutencao d) Ajudam na definicao dos requisitos do sistema Resposta correta: c) A principal vantagem de usar diagramas de classes e que eles ajudam a visualizar a estrutura do sistema, mostrando como as classes estao organizadas e como se relacionam. Isso facilita tanto o desenvolvimento quanto a manutencao, pois a arquitetura do sistema fica mais clara e compreensivel. 15. O que e um "estereotipo" em um diagrama de classes? a) Uma classe que nao pode ser instanciada