我有一段java代码。我是爪哇的菜鸟..
错误:
<identifier> expected
cfg = new Config;代码:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Set;
import java.io.*;
import java.util.*;
import java.util.Properties;
public class Config
{
Properties configFile;
public Config()
{
configFile = new java.util.Properties();
try {
configFile.load(this.getClass().getClassLoader().getResourceAsStream("config"));
}catch(Exception eta){
eta.printStackTrace();
}
}
public String getProperty(String key)
{
String value = this.configFile.getProperty(key);
return value;
}
}
public class ClosureBuilder {cfg = new Config();
private static String JDBC = cfg.getProperty("JDBC");
private static String URL = cfg.getProperty("URL");
private static String DIMENSION_TABLE = cfg.getProperty("DIMENSION_TABLE");
private static String CLOSURE_TABLE = cfg.getProperty("CLOSURE_TABLE");
private static String KEY = cfg.getProperty("KEY");
private static String PARENT_KEY = cfg.getProperty("PARENT_KEY");
private static Object TOP_LEVEL_PARENT_KEY = '0';
private Object topLevel = null;
private Set<Object> processedNodes;
private PreparedStatement aPst;
public static void main(String[] args) throws Exception {
----------- More code --------发布于 2012-05-21 22:04:24
是的,这就是问题所在:
public class ClosureBuilder {
cfg = new Config();
...
}在类的顶层,您只能拥有:
({ ... })
static { ... })
这些都不是。如果你打算声明一个变量,你应该这样做:
private Config cfg = new Config();如果这不是你想做的,你应该解释你的意图。
编辑:一旦你修复了这个问题,这个编译器错误看起来就很清楚了:
类配置是公共的,应在名为Config.java的文件中声明
有两种可能的修复方法:
将其设置为non-public
Config to a file任何一个都应该修复这个错误(可能会揭示更多)。
发布于 2012-05-21 22:03:51
你在哪里声明你的cfg变量?
我只看到作业。我认为这可能是原因所在。
Config cfg = new Config();应该会修好的。
发布于 2012-05-22 01:38:31
虽然您的意图不是很清楚,但我假设您希望在创建任何其他变量之前创建cfg。首先,将您的类Config声明为非公共的,或者移动到文件Config.java。在静态块中初始化cfg是有意义的。下面是一个可能的代码片段:
私有静态配置cfg = null;
私有静态字符串JDBC = null;
静态{
cfg = new Config();
JDBC = cfg.getProperty("JDBC"); }
https://stackoverflow.com/questions/10686729
复制相似问题