Что означает «не включающий класс» здесь, в Scala - PullRequest
2 голосов
/ 13 января 2011

Хой, я изучаю scala и пытаюсь перевести некоторый Java-код на Scala. Вот код ниже на Java, который я хочу перевести

public class Note{
    protected void addNote(Meeting n) {
        //add n to a list
    }
 }

 public abstract class Meeting{

     public Meeting(String name, Note note){
         note.addNote(this)
     }
 }

когда я перевожу их в Scala

class Note{
    protected[Meeting] addNote(n:Meeting){
        //add n to list
    }
}

abstract class Meeting(name:String,note:Note){
    note.addNote(this)
}

тогда я получил ошибку в классе. Примечание: Встреча не является включающим классом.

что это значит? Я пробовал имя_пакета вместо собрания, например: Защищенное [имя_пакета] addNote (n: собрание), но оно не работает.

1 Ответ

1 голос
/ 13 января 2011

Вы не можете делать уроки друзей таким образом. Попробуйте добавить пакет, например:

package translation 
class Note{
  protected[translation] def addNote(n:Meeting){
    //add n to list
  }
}
abstract class Meeting(name:String, note:Note){
  note.addNote(this)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...