Как реализовать эту диаграмму классов в JAVA? - PullRequest
0 голосов
/ 26 апреля 2020

Я слежу за диаграммой классов проекта. и я запутался с этой частью: enter image description here

Как я должен создать переменную, содержащую класс? (Я не знаю, понятно ли это, но ни один из этих классов не является основным)

Пожалуйста, помните, что я студент, и мне никогда не приходилось следовать какой-либо Диаграмме классов раньше .

Ответы [ 3 ]

3 голосов
/ 26 апреля 2020

Диаграмма классов показывает композицию между Историко и Усуарио. Это отношение имеет (Историко имеет Усуарио).

Вы можете определить конструктор с нулевой параметризацией следующим образом:

 class Usuario {
    public Usuario() {
   }
  }

более когда-либо компилятор добавит конструктор с нулевой параметром, если вы не определите в то время как генерация байтового кода, если конструктор не определен.

Вы можете определить составление следующим образом:

public class Historico {
  private Usuario responsavel;
}

Полный код:

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;
    }
}
1 голос
/ 26 апреля 2020

Было бы что-то вроде этого:

class Usuario {

  public Usuario() {
    // TODO Auto-generated constructor stub
  }
}

class Historico {
  private Usuario responsavel;

  public Historico() {
    // TODO Auto-generated constructor stub
  }

  public Usuario getResponsavel() {
    return responsavel;
  }

  public void setResponsavel(Usuario responsavel) {
    this.responsavel = responsavel;
  }
}

public class Demo {
  public static void main(String[] args) {
    Usuario u = new Usuario();
    Historico h = new Historico();
    h.setResponsavel(u);
  }
}
0 голосов
/ 26 апреля 2020

Вы можете создать переменную для класса так же, как и любую другую переменную:

// what you're probably used to:
int myInt;

Скажем, у вас есть класс Usuario, как на диаграмме, вы можете создать переменную для него следующим образом :

Usuario usuario;

Не совсем точно, что вы спрашиваете, но вы можете даже иметь экземпляры класса, указывать на другие экземпляры того же класса, например, с помощью узла:

public class Node {
    public Node prev;
    public Node next;

    public Node(Node prev, Node next) {
        this.prev = prev;
        this.next = next;
    }
}
...