Java 如何通过对象将日期值发送给构造函数,以及如何取回该日期值?
当我想编译以下代码时,编译时错误是: 构造函数Person(String,int)未定义,等等 人员p=新人(“阿布希”,2019年2月4日) 我写了这段代码:Java 如何通过对象将日期值发送给构造函数,以及如何取回该日期值?,java,Java,当我想编译以下代码时,编译时错误是: 构造函数Person(String,int)未定义,等等 人员p=新人(“阿布希”,2019年2月4日) 我写了这段代码: import java.util.Date; class Person{ String name; Date DOB; public Person(String name, Date dOB) { this.name = name; DOB = dOB; } pu
import java.util.Date;
class Person{
String name;
Date DOB;
public Person(String name, Date dOB) {
this.name = name;
DOB = dOB;
}
public String getName() {
return name;
}
public Date getDOB() {
return DOB;
}
}
class Student extends Person
{
int StudentID;
public Student(String name, Date dOB, int studentID) {
super(name, dOB);
StudentID = studentID;
}
public int getStudentID() {
return StudentID;
}
public static void main(String[] args) {
Person p = new Person("abhi",2/4/2019); // i can't pass date values to constructor
student s = new Student("mark",2019-04-01,123456); //i can't pass date values to constructor
System.out.println("Name "+p.getName());
System.out.println("DOB "+p.getDOB());
System.out.println("Name "+s.getName());
System.out.println("DOB "+s.getDOB());
System.out.println("StudID "+s.getStudentID());
}
}
`
在Java中,
2/4/2019
被解释为整数除法(2除以4除以2019),即0。但这绝对不是约会
我建议不要使用Date
对象,而是使用更易于使用的对象。您的代码将变成:
Person p = new Person("abhi", LocalDate.of(2019, 4, 2));
我认为你应该更具体一些。但我可以建议您查看一下可以传递到构造函数中的
Consumer
类。或者您可以将值保存到字段中,并在pojo初始化后将其取回。您可以使用getter和setter设置并返回值。要传递日期,请尝试创建一个自定义构造函数来发送日期值并进行设置(如Class c=newclass(PassDateHere);)。您是否有一些可能使用过的最低限度的代码?能否提供一些代码?也许还可以解释一下你的代码?这个问题有点太模糊了。