Я сделал несколько новых настроек предупреждения в eclipse. С этими новыми настройками я столкнулся с странным предупреждением. После прочтения я узнал, что это такое, но не смог найти способ его удалить.
Вот моя проблема с примером кода
public class Test {
private String testString;
public void performAction() {
new Thread( new Runnable() {
@Override
public void run() {
testString = "initialize"; // **
}
});
}
}
Строка с ** дает мне предупреждение в eclipse
Read access to enclosing field Test.testString is emulated by a synthetic accessor method.
Increasing its visibility will improve your performance.
Проблема в том, что я не хочу изменять модификатор доступа testString
.
Кроме того, не хотите создавать геттер для него.
Какое изменение должно быть сделано?
More descriptive example
public class Synthetic
{
private JButton testButton;
public Synthetic()
{
testButton = new JButton("Run");
testButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae)
{
/* Sample code */
if( testButton.getText().equals("Pause") ) {
resetButton(); // **
} else if( testButton.getText().equals("Run") ) {
testButton.setText("Pause"); // **
}
}
}
);
}
public void reset() {
//Some operations
resetButton();
}
private void resetButton() {
testButton.setText("Run");
}
}
Строки с **
дают мне то же предупреждение.