Java New Instance Falsy, требующий пустой конструктор - PullRequest
0 голосов
/ 08 июня 2018

У меня была эта проблема, и я не могу найти решение, или даже то, что я сделал, чтобы вызвать эту проблему.Вот код, где у меня возникла проблема:

  Button b1 = new Button(450, 200, "default_button", 500, 60, "BONES", 60) {public void leftClick (){
setCurrentHandler(handlerBone);
}}; //This code shows no errors


b1 = new Button(450, 200, "default_button", 500, 60, "BONES", 60) {public void leftClick() {
setCurrentHandler(handlerBone);
}}; //This code shows the error

handlerMuscle.addClickObject(new Button(10, 10, "button_x", 60, 60) {public void leftClick() {
setCurrentHandler(handlerMenu);
}}); //This is the code I want to use but shows an error

Вы можете увидеть источник моей проблемы.Первое утверждение не дает ошибок, все же второе делает, а третье было исходным кодом, который у меня был, который работал в один момент и (по-видимому) ни одна причина не перестала работать.

При наведении курсора на красное подчеркивание всплывающее окно гласит «Кнопка конструктора () не определена» и предлагает добавить значения, соответствующие конструктору.Когда эта кнопка нажата, она добавляет избыточные параметры, такие как

b1 = new Button(t, t, name, t, t450, 200, "default_button", 500, 60, "BONES", 60) //etc. 

Этот же код работал раньше, и я пробовал подобный код в другой программе, просто чтобы убедиться, что я не сошел с ума, и это сработалохорошо.Любая помощь с этой проблемой будет принята.

1 Ответ

0 голосов
/ 08 июня 2018

Извините, что отвечаю на свой вопрос, я чувствую себя идиотом.Надеюсь, кто-то извлечет пользу из этого поста.В основном проблема не имеет ничего общего с конструктором.

По сути, проблема с моим кодом заключается в том, что вы не можете завершить блок кода, который у меня был}});скорее вы должны разделить это на две строки:

}} );

Я не совсем уверен, почему эта проблема форматирования вызывает проблему в Java (потому что кажется, что это изменение в форматированиине должен изменять интерпретацию кода компилятором), поэтому, если у кого-то есть ответ на этот вопрос, дайте мне знать.

...