У меня проблема, которая выглядит просто, но я не могу понять это.Как получить доступ к объекту вне его метода
Вот упрощенная версия моей проблемы:
public void createContents() {
Composite dataCalcComposite = new Composite(shell, SWT.NONE);
dataCalcComposite.setBounds(0, 10, 279, 146);
}
public void repositionObjects() {
dataCalcComposite.setLocation(50, 10)
}
Это не будет работать, потому что repositonObjects
не может видеть переменную dataCalcComposite
.
Я знаю, что могу исправить это, вызвав repostionObjects
внутри первого метода и передав переменную в качестве параметра, но это очень упрощенная версия моей проблемы, и количество объектов, которые необходимо переместить, будет меняться, поэтому Я не думаю, что этот метод будет работать.
Кроме того, я не могу использовать static
для переменной, моя IDE говорит, что с ней будет работать только final
.
Так что, не имея возможности использовать static для переменной, как я могу получить к ней доступ из другого метода?
Он будет работать, он будет выглядеть немного небрежным, но он определенно решает мою проблему. –
@MarkKramer Я отредактировал код, чтобы сделать его более безопасным и предотвратить исключение, если вы вызываете repositionObjects до вызова createContents. – Eran