Это потому, что класс SAT
является внутренним классом из BoardTestBean
, но не является статическим внутренним классом . Только статические внутренние классы могут быть созданы без "включающего" контекста экземпляра; нестатический нужен «родительский» экземпляр.
Если SAT
не требуется использовать состояние BoardTestBean
, объявите его static
; в противном случае добавьте метод экземпляра в BoardTestBean
и создайте экземпляр SAT
оттуда.
P.S. Я предполагаю, что вы обращаетесь к SAT
из того же пакета, потому что он имеет видимость пакета . Если это не преднамеренно, вам нужно будет также создать класс public
.
РЕДАКТИРОВАТЬ Так вы добавляете метод экземпляра в BoardTestBean
, возвращая SAT
:
SAT makeSAT() {
return new SAT();
}
Теперь снаружи BoardTestBean
вы можете сделать это:
// assuming that you have an instance of BoardTestBean...
BoardTestBean myBean = ...
BoardTestBean.SAT = myBean.makeSAT();