У меня есть код-конструктор, в котором я установил множество переменных в null
и хотел сократить его до одного оператора, но компиляция завершилась неудачно.Ошибка преобразования Vexing объекта для нулевых объектов
Вот самый простой пример, который я могу думать:
class Bar{}
class Foo{}
class FooBar
{
Foo foo;
Bar bar;
FooBar()
{
foo = bar = null;
}
}
и выходы компилятора «Bar не может быть преобразован в Foo». Этого я не понимаю. Здесь нет объектов. Что происходит?
Прошу прощения, если этот вопрос каким-то образом написан правильно. Возможно, вы могли бы объяснить мне, что с ним не так. Большое спасибо, –
Установка переменных в 'null' в конструкторе не требуется. Они уже «нуль». – Kayaman
Независимо от того, что компилятор говорит «a = b = something», это плохой стиль в Java. Только не делай этого. –