Я новичок в Java, и я пытаюсь привести некоторые примеры, чтобы понять, как это работает.Java: создание объекта вызывает ошибку времени выполнения
У меня возникли проблемы с пониманием причины отказа следующего кода. Я знаю строку, которая вызывает ошибку, но я не могу сказать почему. Я сделал два класса, Class1
и Main
, чей код записывается в двух отдельных файлах .java:
public class Class1
{
int var;
public void method1()
{
System.out.println(var);
}
Class1 obj1 = new Class1(); // this is the line that causes the error
}
и
public class Main
{
public static void main (String[] args)
{
Class1 obj = new Class1();
obj.method1();
}
}
Это компилируется нормально, но когда я запускаю java Main
он просто печатает сотни раз ошибка
at Class1.<init>(Class1.java:8)
Я попытался запустить java Main | more
(я использую Unix Bash), но труба становится как-то игнорировать d, и я не вижу первую строку сообщения об ошибке. Также не выполняется перенаправление вывода на текстовый файл java Main > log.txt
. Если я удалю эту строку, т. Е. Если я не создаю объект Class1
obj1
в классе класса Class1
, все будет работать нормально. Может ли кто-нибудь объяснить мне, что случилось с этой линией?
Спасибо
Спасибо всем за ваши ответы, я получил его сейчас. – AndreasT
Есть ли причина для того, чтобы вопрос был опущен? – AndreasT