Search code examples
javaclass-diagram

How to implement this Class Diagram in JAVA?


I'm following a Class Diagram of a project. and I got confused with this part: enter image description here

How am I supposed to create a variable containing a Class? (I don't know if it's clear, but none of these classes are the main one)

Please, bare in mind that I'm a student, and I've never had to follow any Class Diagram before.


Solution

  • Class diagram shows a composition between Historico and Usuario. It's a has relationship between (Historico has a Usuario).

    You can define zero parameterized constructor like this:

     class Usuario {
        public Usuario() {
       }
      }
    

    more ever compiler will add zero parameter constructor if you don't define while byte code generation if no constructor defined.

    You can define compostion like this :

    public class Historico {
      private Usuario responsavel;
    }
    

    Complete code:

    public class Usuario {
        String login;
        String senha;
    
        /**
         * @return the login
         */
        public String getLogin() {
            return login;
        }
    
        /**
         * @param login the login to set
         */
        public void setLogin(String login) {
            this.login = login;
        }
    
        /**
         * @return the senha
         */
        public String getSenha() {
            return senha;
        }
    
        /**
         * @param senha the senha to set
         */
        public void setSenha(String senha) {
            this.senha = senha;
        }
    
    }
    

    class Historico:

     public class Historico {
        private Usuario responsavel;
        private String dataatualizacao;
        private String descricao;
    
        /**
         * @return the dataatualizacao
         */
        public String getDataatualizacao() {
            return dataatualizacao;
        }
    
        /**
         * @param dataatualizacao the dataatualizacao to set
         */
        public void setDataatualizacao(String dataatualizacao) {
            this.dataatualizacao = dataatualizacao;
        }
    
        /**
         * @return the descricao
         */
        public String getDescricao() {
            return descricao;
        }
    
        /**
         * @param descricao the descricao to set
         */
        public void setDescricao(String descricao) {
            this.descricao = descricao;
        }
    
        public void setResponsavel(Usuario responsavel) {
            this.responsavel = responsavel;
        }
    }