我是一個初學java程序員;現在我正在使用J2SE和NetBeans 6.9.1來編寫應用程序。在java程序中加載屬性
我現在面臨的問題是使用單例類從本地文件系統中衆所周知的位置加載屬性。讓我感到困擾的是,我得到一個錯誤,它聲明瞭一個throws子句,或者在INSTANCE變量被初始化的地方捕獲異常。任何人都可以幫我解決這個問題。
在此先感謝。
的代碼如下:
package cat.oai.atapplications.phot;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;
/**
*
* @author fdalmau
*/
public class PhotPropertiesManager {
private static Properties photProperties;
private PhotPropertiesManager() throws FileNotFoundException, IOException {
photProperties = LoadProperties();
}
public static PhotPropertiesManager getInstance() {
return PhotPropertiesManagerHolder.INSTANCE;
}
public static Properties getPhotProperties() {
return PhotPropertiesManager.photProperties;
}
private static Properties LoadProperties() throws FileNotFoundException,
IOException {
Properties defaultPhotProperties = new Properties();
FileInputStream in = new FileInputStream("defaultphot");
defaultPhotProperties.load(in);
in.close();
Properties applicationPhotProperties =
new Properties(defaultPhotProperties);
in = new FileInputStream("lastexecutionphot");
applicationPhotProperties.load(in);
in.close();
return applicationPhotProperties;
}
private static class PhotPropertiesManagerHolder {
/******
The problem is is this line of code:
******/
static final PhotPropertiesManager INSTANCE = new PhotPropertiesManager();
}
}
能否請您給我們的錯誤?是否有堆棧跟蹤? –
它最有可能要求嘗試捕獲,因爲當你聲明PhotPropertiesManager()時,它會拋出多個異常。 – Max
@Max你釘了它,Francesc,你需要使用「try ... catch」塊,資源http://docs.oracle.com/javase/tutorial/essential/exceptions/catch.html – ComputerSaysNo