Так что я знаю, что это возможно при использовании суперкласса, однако это очень ограничивает гибкость.Итак, мой вопрос, могу ли я использовать интерфейс?Что-то аля.
interface Taggable {
/*Adds tag(s) and returns a list of currently set tags*/
List<String> addTags(String ... tag)
/*Removes tag(s) and returns a list of currently set tags*/
List<String> removeTags(String ... tag)
}
class User implements Taggable {
String username
static hasMany = [tags:Tag]
}
class Tag {
String name
static hasMany = [references:Taggable]
static belongsTo = Taggable
static constraints = {
name(nullable: false, blank: false, unique: true)
}
}
Меня интересует ссылка на объект, который имеет следующий тег.Однако этот объект не может расширять конкретный класс.Вот почему я задаюсь вопросом, можно ли это сделать с помощью интерфейса.
Итак, можно ли это сделать?