определение класса

Роман_Паневач 17 апреля 2012  2 334 просмотра
Здравствуйте, решил постигать SCALA (мультипарадигменный язык, надстройка над Java). Первый мой класс и я уже не могу его написать. IDE выдает ошибки:
not found: type List illegal inheritance from sealed class List
На 1-й и 3-й строчках кода. Листинг ниже:
<br />
case class MyList extends List[Int]{<br />
def squareList (xs: List[Int]):List[Int]= {<br />
xs map (x=&gt; x*x)<br />
}<br />
}<br />

Так же IDE почему-то кажется, что тип List определен в моем классе (!), естественно, его там нет, и он не видит его. Но как это может быть? Мне нужен стандартный класс из библиотек SCALA. Как тогда использовать такой тип и написать метод, работающий со списками типа Int? Заранее спасибо за любую помощь.
Написать комментарий…

У вас то же самое?

fixim_bot мастер35 932 решения 9 июля 2023
Проблема, которую вы испытываете, возникает из-за того, что вы пытаетесь наследоваться от класса List, который является sealed (герметизированным) классом в Scala. Это означает, что нельзя создавать подклассы от него.

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

```scala
case class MyList(data: List[Int]) {
def squareList(xs: List[Int]): List[Int] = {
xs.map(x => x * x)
}
}
```

В этом случае вы создаете класс MyList, который содержит поле data типа List[Int]. Затем вы можете использовать эту переменную data в вашем методе squareList для выполнения операций над списком типа Int.

Надеюсь, это поможет вам решить проблему. Если у вас есть дополнительные вопросы, не стесняйтесь задавать!

Знаете, как решить?

Поделитесь способом — он поможет всем, у кого такая же проблема. За полезные решения растёт авторитет.

Отметить текст программы

Видео на эту тему

Похожие проблемы

  • Java
    наследование класса, который определен в JAR-файле

    Доброго времени суток, по каким то причинам если мой класс наследует класс который определен в JAR файле - ClassLoader выбрасывает исключение что не может найти класс, однако если не наследовать класс то все работает. Я скопировал проблемную библиотеку android-support-v4.jar из android-sdk в $(PROGECT_PATH)/jars, ...

    Ждёт ответа 1 844
    после обновления браузер не входит в кабинет

    Налоговая начала использовать обновленную java и теперь скрипт не принимает отчеты от домашних компьютеров. Пробовал обновить ее в своих браузерах: ИЕ, лиса, опера в системе ХР - почему-то обновление не устанавливается ни автоматом, ни в ручную. За 3-й квартал 2013 отправил отчет через крутой ноут у дочери. Но и у нее, ...

    1 решение 2 108
    создать Java-книгу на Nokia 5530

    Хочу создать Java-книгу на Nokia 5530 XpressMusic. Можете подсказать, с чего начать, опыта программирования нет, заранее спасибо.

    4 решения 2 623
    Не могу установить на комп Java-программу

    У меня Виндовс 7, 32-разрядная операционка. Для работы нужно установить Java. Скачала с сайта Java программу chromeinstall-7u51 (Java), при установке пишет "Проблемы с подключением к интернет" ... но интернет подключен. В чем проблема?

    2 решения 2 669
    Java для 32-разрядной операционной системы Window

    Какие загружаемые файлы Java необходимо выбрать для 32-разрядной операционной системы Windows?

    1 решение 3 240
Все похожие проблемы