Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 试图找出如何使用;日期();这是一项任务_Java_Date - Fatal编程技术网

Java 试图找出如何使用;日期();这是一项任务

Java 试图找出如何使用;日期();这是一项任务,java,date,Java,Date,基本上,我需要将closeDate=null和openDate设置为当前日期。使用最新版本的Java SDK和netbeans import java.util.Date; public class Task { Date openDate = new Date(); Date closeDate = new Date(); public int taskType; public Task(int taskType) { thi

基本上,我需要将
closeDate=null
openDate
设置为当前日期。使用最新版本的Java SDK和netbeans

import java.util.Date;

public class Task {

    Date openDate = new Date();
    Date closeDate = new Date();
    public int taskType;

    public Task(int taskType)
    {   
        this.taskType = taskType;
    }

    static void setOpenDate(Date openDate)
    {

    }

    static void setCloseDate(Date closeDate)
    {

    }

    static void setTaskType(int taskType)
    {

    }

    static int getTaskType()
    {
    }

    static Date getOpenDate()
    {
        return openDate;
    }

    static Date getCloseDate()
    {
        return closeDate;
    }

}
这就是我所拥有的。我在这个痛苦的任务的其他部分上迷失了方向,但我只是需要一些清晰的东西。

从方法中删除“静态”修饰符,并创建setter和getter实例级别。您可以使用Java8
LocalDate
来表示日期和时间,但我认为您目前不需要它

您可以按照下面的代码段中的定义初始化实例变量,创建新的任务对象后,下面的代码将打开日期初始化为当前日期,关闭日期初始化为null

import java.util.Date;

public class Task {

    private Date openDate  = new Date();
    private Date closeDate = null;
    public  int  taskType;

    public Task(int taskType) {
        this.taskType = taskType;
    }

    public Date getOpenDate() {
        return openDate;
    }

    public void setOpenDate(Date openDate) {
        this.openDate = openDate;
    }

    public Date getCloseDate() {
        return closeDate;
    }

    public void setCloseDate(Date closeDate) {
        this.closeDate = closeDate;
    }

    public int getTaskType() {
        return taskType;
    }

    public void setTaskType(int taskType) {
        this.taskType = taskType;
    }
}

您好,请在下面找到示例程序,以便在您呼叫时获取当前时间的日期,并且关闭日期为空

public class UpdateDate {

    LocalDateTime getCurrentDate(){
    LocalDateTime openDate = LocalDateTime.now();
    System.out.println("Current date: "+openDate);
    return openDate;
}
Date getClosingDate(){
    Date closingDate = null;
    System.out.println("Closing date: "+closingDate);
    return closingDate;
}
public static void main(String[] args) {
    UpdateDate ud = new UpdateDate();
    ud.getCurrentDate();
    ud.getClosingDate();
}
}

它生成以下输出,您可以使用java中Date类的format和解析方法将其更改为您喜欢的任何格式

output 

Current date: 2018-08-22T18:55:35.906
Closing date: null

需要什么帮助来澄清我的兄弟?整件事还是你有一点困惑?(1)正确缩进你的代码。(2) 使
closeDate=null
有什么问题?(3) 您是否必须使用旧的
Date
类?处理时间有更新的类。(4) 你找过了吗?谷歌搜索很容易给出很多答案。您没有指定任何问题,但似乎您在使用静态方法时遇到了问题。您的getter/setter方法是静态的,而您试图获取/设置的字段不是静态的!如果打开日期和关闭日期只是日期(不包括一天中的时间),请使用
LocalDate
。如果也需要记录时间,请使用
Instant
<代码>日期早已过时,设计拙劣,如果可以避免的话,你就不会想使用它。糟糕的标题。编辑以指定特定的技术问题。谢谢,伙计,这帮了大忙+Reppublic类UpdateDate{LocalDateTime getCurrentDate(){LocalDateTime openDate=LocalDateTime.now();Date closeDate=null;//=new Date();System.out.println(“当前日期:+openDate”);return openDate;}Date getClosingDate(){Date closingDate=null;System.out.println(“关闭日期:+closingDate”);return closingDate;}公共静态void main(字符串[]args){UpdateDate ud=new UpdateDate();ud.getCurrentDate();ud.getClosingDate();}我在下面添加了一个示例程序,让您了解一下您的作业@NMagnus
Date
是可变的,这意味着程序的另一部分可能会在调用getter或setter后改变它。好的解决方案是使用
Instant
LocalDate
,它们是不可变的,因此是安全的。如果您坚持使用过时的
Date
类,那么对于生产代码,您需要在每个getter和setter中防御性地复制
Date