Я был сбит с толку, увидев код (на самом деле тестовый код):
def user = new User(userId:'anto',password:'xxxx')
user.addToPosts(new Post(content:"First"))
def foundUser = User.get(user.id)
В приведенном выше коде я создал объект для класса User
и назвал его user
. Если я заменю строку:
def foundUser = User.get(user.id)
На что-то подобное,
def foundUser = user.get(user.id)
I.e. Я изменил имя класса User
на user
имя объекта. И когда я запускаю тест, он не выдает мне никакой ошибки.
Но когда я изменю эту строку на:
user.addToPosts(new Post(content:"First"))
На что-то вроде
User.addToPosts(new Post(content:"First"))
Я получаю ошибку! Так что же происходит за кулисами? Для каких сценариев мне нужно использовать имя объекта, а для каких сценариев - имя класса? И почему?
Заранее спасибо.