Computação Múltipla Escolha

Uma classe é uma estrutura que modela um conjunto de objetos cujas características são similares. A classe, por meio dos métodos, modela o comportamento de seus objetos e os possíveis estados do objeto são modelados por meio de atributos. Confira o requisito a seguir: RF01 – o sistema deve permitir cadastrar cursos contendo código, descrição e coordenador. Considerando a situação apresentada, assinale a afirmativa que corresponda modelagem da classe com base no requisito, considerando todos os atributos private e métodos public.

Uma classe é uma estrutura que modela um conjunto de objetos cujas características são similares. A classe, por meio dos métodos, modela o comportamento de seus objetos e os possíveis estados do objeto são modelados por meio de atributos. Confira o requisito a seguir:

RF01 – o sistema deve permitir cadastrar cursos contendo código, descrição e coordenador.

Considerando a situação apresentada, assinale a afirmativa que corresponda modelagem da classe com base no requisito, considerando todos os atributos private e métodos public.

  1. Classe: Curso; Atributo - codigo: int, - descricao: String; Métodos: +cadastrar(int, String): void
  2. Classe: Disciplina; Atributo - codigo: String, - descricao: String; Métodos: - cadastrar(int, String): void
  3. Classe: - Curso; Atributo: - codigo: int, - descricao: String, - coordenador: Professor; Métodos - cadastrar (int, String, Coordenador): void
  4. Classe: Curso; Atributo: - codigo: int, - descricao: String, - coordenador: Professor; Métodos: + cadastrar(int codigo, String descricao, Professor coordenador): void
  5. Classe: Tuma; Atributo - codigo: int, - descricao: String, - codigoCoordenador: int, - nomeCoordenador: String, titulacaoMaxima: String; Métodos: + cadastrar(int, String): void

Resolução completa

Explicação passo a passo

Resumo da resposta

Análise da Questão de Modelagem de Classes

Esta questão trata de Programação Orientada a Objetos, especificamente sobre modelagem de classes em UML baseada em requisitos funcionais.

Identificação dos Elementos do Requisito

A partir do requisito RF01, devemos extrair os seguintes elementos:

ElementoDescrição
ObjetoCadastro de cursos
Atributos necessárioscódigo, descrição e coordenador
Regra de visibilidadeAtributos private (-), Métodos public (+)

Análise das Alternativas

Critérios de Avaliação

Para selecionar a alternativa correta, verificamos:

  • Nome da classe: Deve ser "Curso" pois o requisito menciona "cadastrar cursos"
  • Atributos: Devem conter código, descrição e coordenador
  • Visibilidade dos atributos: Todos devem ser privados (-)
  • Visibilidade dos métodos: Todos devem ser públicos (+)
  • Parâmetros do método: Devem corresponder aos atributos da classe

Comparativo das Opções

AlternativaClasseAtributosVisibilidade MétodosCorreção
1CursoFaltando coordenadorPublic (+)❌ Incompleto
2DisciplinaFaltando coordenadorPrivate (-)❌ Erros múltiplos
3- CursoCompletosPrivate (-)❌ Método privado
4CursoCompletosPublic (+)✅ Correta
5TumaExcesso de atributosPublic (+)❌ Classe errada

## Análise Detalhada da Alternativa 4

Alternativa 4 é a correta porque:

  • Classe: Curso está corretamente nomeada conforme o requisito
  • Atributos privados:
  • - codigo: int → código numérico
  • - descricao: String → descrição textual
  • - coordenador: Professor → referência ao objeto coordenador
  • Método público:
  • + cadastrar(int codigo, String descricao, Professor coordenador): void
  • Recebe exatamente os três parâmetros correspondentes aos atributos
  • Está marcado com + indicando visibilidade pública

Conceitos-chave:

  1. Encapsulamento: Atributos privados protegem os dados da classe
  2. Interface pública: Métodos públicos permitem interação externa controlada
  3. Associação de classes: O atributo coordenador: Professor indica uma relação entre classes

Conclusão

Alternativa 4 - Classe: Curso; Atributo: - codigo: int, - descricao: String, - coordenador: Professor; Métodos: + cadastrar(int codigo, String descricao, Professor coordenador): void

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Computação

Ver mais Computação resolvidas

Tem outra questão de Computação?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.