在写测试接口的时候遇到个问题:用mockMultipartBuilder报出空指针异常,声明对象方式是下面的方式,所以想着直接报问题定位到对象没有注入进来,所以一顿百度查找,浪费了时间, 结果是因为url的地址没有写。
在有spring,web环境下,
MockMultipartHttpServletRequestBuilder mockMultipartBuilder = null;
是可以当做对象直接注入到 方法的形参里面 ,是因为spring的bean工厂直接给实例化。
定位声明对象问题之后,实验了一把,巩固了以前的基础知识
以String 为例介绍:
String s =null :只是声明了对象的引用,并没有把对象真正的实例化出来,仅仅是把栈内存的String引用指向了一个null;
String s ="" 和String s = new Stirng();是真正的把对象创造出来,并把对象放到堆内存里。