Ошибка incompatible types в task14.task1405;

Всем привет. помогите разобраться, понимаю что решение простое… но что то не доходит какое именно!
ошибка
"
incompatible types: com.javarush.task.task14.task1405.Solution.Food cannot be converted to com.javarush.task.task14.task1405.Solution.Selectable:
Solution.java, line: 10, column: 33
"
Вывод компилятора:
com/javarush/task/task14/task1405/Solution.java:10: error: incompatible types: com.javarush.task.task14.task1405.Solution.Food cannot be converted to com.javarush.task.task14.task1405.Solution.Selectable
Selectable selectable = new Food();

/*
Food
1. Реализовать интерфейс Selectable в классе Food.
2. Метод onSelect() должен выводить на экран фразу «food was selected«.
3. Подумай, какие методы можно вызвать для переменной food и какие для selectable.
4. В методе foodMethods вызови методы onSelect, eat, если это возможно.
5. В методе selectableMethods вызови методы onSelect, eat, если это возможно.
6. Явное приведение типов не использовать.
*/

public class Solution {
    public static void main(String[] args) {
        Food food = new Food();
        Selectable selectable = new Food();
        Food newFood = (Food) selectable;

        foodMethods(food);
        selectableMethods(selectable);
    }

    public static void foodMethods(Food food) {
       food.eat();
        food.onSelect();

    }

    public static void selectableMethods(Selectable selectable) {
        selectable.onSelect();

    }

    interface Selectable {
        void onSelect();
    }

    static class Food {
        public void onSelect() {
            System.out.println("food was selected");
        }
        public void eat() {
            System.out.println("food was eaten");
        }
    }
}
  • ,

обновление в ide показывает ошибки подчеркнутые красной волнистой линией

Здравствуйте.
Почему у меня новое обновление плагина с переходом на 2,0 в ide. показывает ошибки подчеркнутые красной волнистой линией, которых нет.
например вот эту строку из task23.task2312:
public enum SnakeDirection { 
}

я понять не мог в итоге просто нажал сдать задание и да все приняло.
Подскажите как это исправить?
  • ,

Ошибка

Добрый день. Сегодня захочу на JavaRush, смотрю обновление вышло. Обрадовался конечно очень, но только радости было не много. Зашел в идею и начал сразу же кодить. И вот тут так задача… у меня никакая задача не проходит проверку. Возможно это ошибка сервера или я где-то натупил?
  • ,

Ошибка

Добрый день. Сегодня захочу на JavaRush, смотрю обновление вышло. Обрадовался конечно очень, но только радости было не много. Зашел в идею и начал сразу же кодить. И вот тут так задача… у меня никакая задача не проходит проверку. Возможно это ошибка сервера или я где-то натупил?
  • ,

.level18.lesson10.bonus02 ошибка валидатора

Добрый день!

Вопрос по валидатору:
почему решение является корректным, если добавить запись без перевода на новую строку?

т.е. вот такая запись «ПРАВИЛЬНАЯ» по мнению валидатора
19846 Шорты пляжные синие 159.00 12
198478 Шорты пляжные черные с рисунко173.00 17
19847983Куртка для сноубордистов, разм10173.99123419847984productName 1.234 5678

А вот так «Программа не прошла тестирование»
19846 Шорты пляжные синие 159.00 12
198478 Шорты пляжные черные с рисунко173.00 17
19847983Куртка для сноубордистов, разм10173.991234
19847984productName 1.234 5678

level08.lesson08.task04

Добрый день (ночь) всем вступившим в клуб «бессонные ночи» ;)
При попытке выполнить 4 задание получил в IDE ошибку — дескать, устаревший код используете для инициализации new Date. Последний выводится перечеркнутым. Понятно, что можно отключить инспектор, но правильно ли это?
map.put(«Stallone», new Date(«JUNE 1 1980»));
Ошибка вот такая: this inspections report where deprecated code is used scope

level08.lesson08.task04

Добрый день (ночь) всем вступившим в клуб «бессонные ночи» ;)
При попытке выполнить 4 задание получил в IDE ошибку — дескать, устаревший код используете для инициализации new Date. Последний выводится перечеркнутым. Понятно, что можно отключить инспектор, но правильно ли это?
map.put(«Stallone», new Date(«JUNE 1 1980»));

Неизвестная ошибка на сервере

Начиная с 27 уровня все задачи выкидывают неизвестную ошибку при работе с сервером.
Перезагрузки не помогают.
Само тоже не проходит — неделя прошла.
На сайте тоже не проходит — виснет.
Перезаливал все несколько раз на разные диски — ничего не меняется.

Была у кого-то такая проблема?

level35.lesson10.bonus01 неизвестная ошибка

Друзья, нужная помощь!
Решаю задачу level35.lesson10.bonus01 и столкнулся с неожиданным поведением.
При проверке решения выдается ошибка «Неизвестная ошибка при работе с сервером».
Сначала грешил на левые пакете в импорте, но попробовав отправить неизменный код(то есть задачу в том виде в котором ее мне выдали), мне выдалась та же ошибка.
Остальные задачи нормально отрабатывают. Пробовал шаманство в виде invalidate cache, не помогло.
Я в недоумении, что я делаю не так?

Откатило назад на одну лекцию

Меня откатило назад на одну лекцию,, был на level27.lesson06 сегодня захожу я уже на lesson05. У меня висела задача с lesson06, попытался её сдать, плагин выдал «Ошибка. Неизвестная задача». Я, конечно не сильно расстроился, но все-таки насторожился. У кого-нибудь было такое?

Уровень 26, урок 15, большая задача 1. Задание 8.

Уже никакого терпения не хватает, будьте добры, укажите почему может не приниматься:
Задание 8
Пора привести в порядок наш main, уж очень там всего много, чего не должно быть.

1. Перенесите логику из main в DepositCommand и InfoCommand
Проверим, что там стало с main? Цикл, в котором спрашиваем операцию у пользователя,
 а потом вызываем метод у CommandExecutor.
И так до бесконечности... надо бы придумать условие выхода из цикла.
Исправь цикл, чтоб он стал do-while. Условие выхода - операция EXIT.

2. Давайте запустим прогу и пополним
 счет на EUR 100 2 и USD 20 6, и посмотрим на INFO.
Ничего не понятно, т.к. создались 2 манипулятора: первый для EUR, второй для USD.
Давайте улучши3м логику InfoCommand. Надо вывести баланс по каждому манипулятору.

2.1. В классе CurrencyManipulatorFactory создайте статический метод
 getAllCurrencyManipulators(), который вернет Collection всех манипуляторов.
У вас все манипуляторы хранятся в карте, не так ли? Если нет, то рефакторьте.
2.2. В InfoCommand в цикле выведите
[код валюты - общая сумма денег для выбранной валюты]
Запустим прогу и пополним счет на EUR 100 2 и USD 20 6, и посмотрим на INFO.
Все работает правильно?
 EUR - 200
 USD - 120
Отлично!

3. Запустим прогу и сразу первой операцией попросим INFO.
Ничего не вывело? Непорядок.
Добавьте в манипулятор метод boolean hasMoney(), который
будет показывать, добавлены ли какие-то банкноты или нет.

4. В InfoCommand используйте метод п.3. и выведите фразу
 "No money available.", если нет денег в банкомате.

package com.javarush.test.level26.lesson15.big01;

import java.util.HashMap;
import java.util.Map;

public class CurrencyManipulator {
    private String currencyCode;
    private static Map<Integer, Integer> denominations = new HashMap<>();

    public CurrencyManipulator(String currencyCode) {
        this.currencyCode = currencyCode;
    }

    public String getCurrencyCode() {
        return currencyCode;
    }

    public void addAmount(int denomination, int count){
        if(denominations.containsKey(denomination))
            denominations.put(denomination, denominations.get(denomination) + count);
        else
            denominations.put(denomination,count);
    }

    public boolean hasMoney(){
        if (denominations.isEmpty()) return false;
        else {
            for (Map.Entry<Integer,Integer> pair : denominations.entrySet()){
                if (pair.getValue()!=0) return true;
            }
            return false;
        }
    }

    public int getTotalAmount(){
        int result = 0;
        for(Map.Entry<Integer,Integer> pair : denominations.entrySet())
            result = result + (pair.getKey() * pair.getValue());

        return result;
    }
}

package com.javarush.test.level26.lesson15.big01.command;

import com.javarush.test.level26.lesson15.big01.ConsoleHelper;
import com.javarush.test.level26.lesson15.big01.CurrencyManipulator;
import com.javarush.test.level26.lesson15.big01.CurrencyManipulatorFactory;

import java.util.Collection;

class InfoCommand implements Command{
    @Override

    public void execute() {
        boolean money = false;
        ConsoleHelper.writeMessage("Information: ");
        for (CurrencyManipulator cur : CurrencyManipulatorFactory.getAllCurrencyManipulators()){
            if (cur.hasMoney()){
                if (cur.getTotalAmount() > 0)
                {
                    ConsoleHelper.writeMessage(cur.getCurrencyCode() + " - " + cur.getTotalAmount());
                    money = true;
                }
            }
        }
        if (!money)
            ConsoleHelper.writeMessage("No money available.");
    }
}

package com.javarush.test.level26.lesson15.big01.command;

import com.javarush.test.level26.lesson15.big01.ConsoleHelper;
import com.javarush.test.level26.lesson15.big01.CurrencyManipulator;
import com.javarush.test.level26.lesson15.big01.CurrencyManipulatorFactory;

class DepositCommand implements Command{
    @Override
    public void execute() {
        ConsoleHelper.writeMessage("Depositing...");

        String curCod = ConsoleHelper.askCurrencyCode();
        CurrencyManipulator manipulator = CurrencyManipulatorFactory.getManipulatorByCurrencyCode(curCod);

        String[] row = ConsoleHelper.getValidTwoDigits(curCod);

        try {
            int numb1 = Integer.parseInt(row[0]);
            int numb2 = Integer.parseInt(row[1]);

            manipulator.addAmount(numb1, numb2);
            ConsoleHelper.writeMessage(String.format("%d %s was deposited successfully", numb1 * numb2, curCod));
        }
        catch(NumberFormatException e){
            ConsoleHelper.writeMessage("Please enter the valid data.");
        }

    }
}

package com.javarush.test.level26.lesson15.big01;

import com.javarush.test.level26.lesson15.big01.command.CommandExecutor;
import com.javarush.test.level26.lesson15.big01.exception.InterruptOperationException;

import java.util.Locale;

/**
 * Created by Stanislav on 19.08.2016.
 */
public class CashMachine {
    public static void main(String[] args) {
        Locale.setDefault(Locale.ENGLISH);

        Operation s = null;

        do {
            try {
                s = ConsoleHelper.askOperation();
                CommandExecutor.execute(s);
            } catch (InterruptOperationException e) {
                e.printStackTrace();
            }
        } while (s != Operation.EXIT);
    }
}


package com.javarush.test.level26.lesson15.big01;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;

/**
 * Created by Stanislav on 19.08.2016.
 */
public class CurrencyManipulatorFactory {
    private static Map<String, CurrencyManipulator> manipulators = new HashMap<>();

    public static CurrencyManipulator getManipulatorByCurrencyCode(String currencyCode){
        CurrencyManipulator man = manipulators.get(currencyCode);

        if (man == null) {
            man = new CurrencyManipulator(currencyCode);
            manipulators.put(currencyCode, man);
        }

        return man;
    }

    private CurrencyManipulatorFactory(){}

    public static Collection<CurrencyManipulator> getAllCurrencyManipulators(){
        return manipulators.values();
    }
}