আমার সমাধানটি এমন একটি পদ্ধতি ব্যবহার করা যা প্রয়োগ করা বেনাম শ্রেণীর ফিরিয়ে দেয়। নিয়মিত যুক্তি পদ্ধতিতে পাস করা যেতে পারে এবং বেনাম শ্রেণীর মধ্যে পাওয়া যায়।
উদাহরণস্বরূপ: (কিছু জিডব্লিউটি কোড থেকে একটি পাঠ্য বাক্স পরিবর্তন পরিচালনা করতে):
/* Regular method. Returns the required interface/abstract/class
Arguments are defined as final */
private ChangeHandler newNameChangeHandler(final String axisId, final Logger logger) {
// Return a new anonymous class
return new ChangeHandler() {
public void onChange(ChangeEvent event) {
// Access method scope variables
logger.fine(axisId)
}
};
}
এই উদাহরণস্বরূপ, নতুন বেনাম শ্রেণীবদ্ধের সাথে উল্লেখ করা হবে:
textBox.addChangeHandler(newNameChangeHandler(myAxisName, myLogger))
বা , ওপি এর প্রয়োজনীয়তা ব্যবহার করে:
private ActionListener newActionListener(final int aVariable) {
return new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("Your variable is: " + aVariable);
}
};
}
...
int myVariable = 1;
newActionListener(myVariable);
final
সংলগ্ন পদ্ধতি থেকে আপনি স্থানীয় ভেরিয়েবলগুলি উল্লেখ করতে পারেন ।