странный вопрос и трудно оценить ответы, так как цель меняется очень сильно .. тем не менее, я не могу удержаться и от того, чтобы бросить мои пару центов (евро!), Потому что я думаю, что причина для NPE еще неspotted
Код, на который я ссылаюсь, (на случай, если он меняется во время записи)
public /* static */ class Directory
{
public static File directory; // the directory that we want to use
public static String dirName = directory.getName();
public String test = "test";
public Directory(File directory)
{
files = directory.listFiles();
}
}
создание экземпляра с пустым файлом выглядит как преступник ... но никогдадостигнут: первый сгенерированный NPE происходит от статической инициализации dirName, которая обращается к директории статического поля, которая .. ну, null
Edit (по состоянию на комментарий @Eristikos): удален модификатор статического класса, чтобы оставаться в синхронизациис оригинальным примером.