使用getter和setter加载对象

时间:2017-09-27 13:10:56

标签: java object methods getter-setter

我是Java Objects的新手,我的问题是:

  • 我有班级人员
  • 我正在创建一个新的Object person5
  • 我将ID设置为5
  • 现在我希望在我的对象p​​erson5中所有信息都是人 ID 5具有,在对象person5
  • 然后我想得到人的年龄5

当我调试我的代码时,只将ID设置为5,所有其他变量都为空。

Person person5 = new Person();
person5.setID(5);
person5.getAge();


@Id @Column(name = "ID") 
private Integer id; 

@Column(name = "AGE") 
private Integer age; 

public Integer getId() { 
return id; 
} 

public void setId(Integer id) { 
this.id = id; 
} 

public Integer getAge() { 
return age; 
} 

public void setAge(Integer age) { 
this.age = age; 
}

我做错了什么?有人可以帮帮我吗?

3 个答案:

答案 0 :(得分:0)

  1. 你没有向我们展示你的吸气剂和定位器功能
  2. 替换您的代码 Person person5 = new Person(); person5.setID(5); person5.getAge();
  3. 你没有为这个人设定年龄。既不在构造函数中,也不在person5.setAge(X)
  4. 这个问题很常见,您应该访问一些教程页面。 stackoverflow不是一个。

答案 1 :(得分:0)

mask = tf.sequence_mask(seq_len, MAX_LENGTH)  # Replace MAX_LENGTH with the size of array on the right dimension, 30 in your case
output= tf.boolean_mask(array, mask=mask)

您创建了一个新人

Person person5 = new Person();

您决定新创建的人的ID为5。

person5.setID(5);

由于你没有明确地告诉Java改变人的年龄与构造函数设置的年龄,它会告诉你它被告知什么,没有

现在我希望在我的对象p​​erson5中,ID为5的人拥有的所有信息都在对象person5

此时,Java对你正在谈论的人5一无所知。如果你希望它具有类似人物的所有属性,你必须告诉Java要么将所有这些属性设置到你的对象中,要么使用值创建一个新的属性(可能来自DB)。

最好在深入了解数据库连接等概念之前澄清对OOPS的疑虑。

答案 2 :(得分:0)

似乎您正在使用JPA。然后,从数据库中检索信息的正确方法不仅仅是创建一个对象并设置id,你必须通过EntityManager从数据库中获取它:

final Person person5 = em.find(Person.class, 5);