Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.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.lang.nullpointerexception_Java_Spring - Fatal编程技术网

构造函数引发的异常嵌套异常为java.lang.nullpointerexception

构造函数引发的异常嵌套异常为java.lang.nullpointerexception,java,spring,Java,Spring,嗨,下面是一个场景 @Component public class DateFormatter() { public String DateToString() { //some Logic; } } public class DataProvider{ @Resource("dateFormatter") private DateFormatter dateFormatter; public void test(){ Date date = new

嗨,下面是一个场景

@Component   
public class DateFormatter() {

public String DateToString() {
   //some Logic; 
      }
    }

public class DataProvider{

@Resource("dateFormatter")
private DateFormatter dateFormatter;

public void test(){
  Date date = new Date();


    String formattedDate = this.dateFormatter(date);

  system.out.print("Formatted Date is :" + formattedDate);}
}
构造函数抛出的异常嵌套异常是java.lang.nullpointerexception是我在控制台上看到的正在调用DateFormatter和DateFormatter,但它没有这样的方法,因为示例中的DateFormatter不是一个方法

public String DateToString(Date date) {
    //some Logic;
    return "";
}
不能在参数中调用date为date的DateToString方法,也不能在方法声明中提供它

public class DataProvider{

        private DateFormatter dateFormatter;

        public void test(){
            Date date = new Date();

            DateFormatter dateFormatter = new DateFormatter();
            String formattedDate = dateFormatter.DateToString(date);

            System.out.print("Formatted Date is :" + formattedDate);}
    }
或者你可以这样做: 公共类数据提供者{

    private DateFormatter dateFormatter;

    public DataProvider(DateFormatter dateFormatter) {
        this.dateFormatter = dateFormatter;
    }

    public void test(){
        Date date = new Date();

        String formattedDate = dateFormatter.DateToString(date);

        System.out.print("Formatted Date is :" + formattedDate);}
}

您必须创建对象的实例才能调用方法。

没有stacktrace吗?它应该告诉您哪个构造函数为nullpointer。此外,您在此处发布的代码中的非包含可能为nullpointer的构造函数…
公共类DateFormatter(){
首先是不可编译的。请格式化您的代码,使其易读。确切地说,我感到困惑的是DateFormatter也给了我空指针。请不要发布草率的代码。如果您需要精确的帮助,请在问题和代码中精确。很抱歉,就是这个。DateFormatter.DateToString(日期)