Вторая половина дня! У меня проблемы с моим логическим методом в классе «Телевидение». Все, что я в основном пытаюсь выполнить, - это когда этот метод вызывается, я хочу, чтобы значение powerStatus было переключено.Списки фактических и формальных методов различаются по длине
/**
* @author Thomas Samuel
* @version 1.0
* @since 22/02/2017
* <h1>Television Remote/Lab Sheet 2</h1>
* <p1>The following program is made for a television remote to control power, channel information, and volume.</p1>
*/
class Television {
Television Television = new Television();
boolean powerStatus = false;
int currentChannel;
int currentVolume = 50;
boolean togglePower(boolean powerStatus) {
if(powerStatus = false) {
powerStatus = true;
} else if(powerStatus = true) {
powerStatus = false;
}
return powerStatus;
}
boolean getPowerStatus(boolean powerStatus) {
return powerStatus;
}
}
public class Controller {
public static void main(String[] args) {
Television.togglePower();
}
}
ошибка я получаю следующим образом:
Controller.java:27: error: method togglePower in class Television cannot be applied to given types;
Television.togglePower();
^
required: boolean
found: no arguments
reason: actual and formal argument lists differ in length
1 error
у вас ** не передан ** аргумент 'boolean', когда вы вызываете метод togglePower. –
'class Television {Телевизионное телевидение = новое телевидение(); ... 'Почему вы создаете экземпляр« Телевидение »как нестатический член? Почему вы называете переменную такой же, как и ее класс? Это оба показателя, что вы не поняли некоторые основополагающие принципы, и сделать ваш код очень трудным для чтения. Например, в вашем основном методе 'Television.togglePower();' выглядит как вызов статического метода, но это не так. Он работает только из-за перегрузки имени «Телевидение». –
И в следующий раз вы получите сообщение о том, что нестатический метод не может ссылаться на статический контекст. –