O objetivo deste tutorial é mostrar como utilizar a UML para representar a relação que existe entre as classes.
Dependência: a classe precisa saber sobre a outra classe para usar os objetos desta classe. Por exemplo, um método da sua classe pode necessitar utilizar algum método da classe Math do Java.
Associação: A classe além de precisar saber sobre a outra classe, ela precisa ter um atributo desta classe. Por exemplo, uma pessoa possui um telefone.
public class Pessoa { private Telefone telefone; }
public class Telefone { private String numero; }
Classe associativa: Quando você quer demonstrar que uma classe tem relacionamento com duas outras classes.
public class Turma { private List< Pessoa > listaPessoa; } public class Pessoa { private List< Turma > listaTurma; private List< Matricula > listaMatricula; } public class Matricula { private int codigo; }
Agregação: Seria uma versão mais forte de associação. Por exemplo, um carro pertence a uma pessoa. Esta pessoa pode vender o seu carro, permitindo que outra pessoa seja dona do carro.
public class Carro { private String nome; } public class Pessoa { private List< Carro> listaCarro; }
Composição: Relação mais forte que agregação. Por exemplo, pessoa possui um email, se a pessoa for excluida do sistema o seu email também será.
public class Email { private String descricao; } public class Pessoa { private List< Email > listaEmail; }
Herança: Quando uma classe possui uma classe pai, herdando todos os seus atributos e métodos que sejam públicos e protegidos. No exemplo abaixo é mostrado um diagrama de classe que mistura herança com a implementação de uma classe.
public interface Pessoa {} public class Usuario implements Pessoa {} public class Administrador extends Usuario {}
Obrigado
Como ninguém comentou antes!!! Muito bom seu post!!!
ResponderExcluirQual a sua referência bibliográfica?
ResponderExcluirOlá,
ResponderExcluirdesculpa, mas eu não sei te informar isso, faz muito tempo que fiz esse tutorial.
Abraços
Simples porém clara e objetiva essas instruções. Me serviram muito mesmo. Valeu!!!
ResponderExcluirSimples porém clara e objetiva essas instruções. Me serviram muito mesmo. Valeu!!!
ResponderExcluirfaltou a classe de dependência
ResponderExcluir