С точки зрения дизайна: просто не делайте этого здесь!
Значение: a Board
представляет собой плату .Знает ли ваша шахматная доска об игре, в которую вы играете в данный момент, или нет?
Другими словами: прохождение this
может быть в порядке, но, как вы указали, это также может быть проблемой.Таким образом, лучшая практика: проходите this
, только если у вас есть на то веские основания.Особенно, когда это происходит внутри конструктора, и this
все еще находится в процессе инициализации.
Предоставление шахматной доске информации о текущей игре не является хорошей причиной.
Имейте в виду: ваши классы / объекты должны моделировать реального мира.Устанавливайте только те отношения, которые имеют смысл!
Таким образом, реальным ответом здесь было бы выяснить почему ваш класс Board должен знать о классе Game, чтобы затем избавиться от этой зависимости.