今天调试程序时,在调用Properties类的setProperty(String key, String value)方法时,遇到了一个小问题,程序运行到该语句时抛出异常,提示java.lang.NullPointerException,调查了半天,发现问题出在调用setProperty(String key, String value)时,传递给该方法的value参数的值为null,由于调用setProperty(String key, String value)方法时,它会去调用Hashtable类中的public synchronized Object put(Object key, Object value)方法,查看该方法的源代码实现,代码的开始处就给出了答案:
 1    }

就此,问题的根源找到了,以后写程序的时候得多注意这些细节。以下附上setProperty(String key, String value)方法的描述:
 1使用setProperty()方法遇到的一个小问题Object java.util.Properties.setProperty(String key, String value)
 2使用setProperty()方法遇到的一个小问题Calls the Hashtable method put. Provided for parallelism with the getProperty method. Enforces use of strings for
 property keys and values. The value returned is the result of the Hashtable call to put. 
 3
使用setProperty()方法遇到的一个小问题
 4
使用setProperty()方法遇到的一个小问题See Also:
 5
使用setProperty()方法遇到的一个小问题getProperty

 6
使用setProperty()方法遇到的一个小问题Parameters:
 7使用setProperty()方法遇到的一个小问题key: the key to be placed into this
 property list.
 8
使用setProperty()方法遇到的一个小问题value: the value corresponding to key.

 9
使用setProperty()方法遇到的一个小问题Returns:
10使用setProperty()方法遇到的一个小问题the previous value of the specified key in this property list, or null if
 it did not have one.

11
使用setProperty()方法遇到的一个小问题Since: 1.2

相关文章: