메서드 내에서 새로운 익명 클래스를 정의한 다음 아래 코드에 설명 된 것처럼 외부 클래스 전용 필드에 인스턴스를 할당하는 것이 합법적입니까? 나는 자바를 배우고 이것에 대한 이유를두고 머리를 쓰려고 노력하고있다. 감사!익명 클래스 및 초시계 전용 필드
public class Outer{
private int id;
private String name;
private SwingWorker doSomething; //Is it ok not to include it in the constructor?
public Outer (int id, String name){
//constructor, but didn't include the instance doSomething
}
public void fuctionOne(){
Swingworker doSomething =new SwingWorker<int, Void>(){
protected int DoInBackground(){
...........// created an anonymous class and override methods
내가 해봤 니? 컴파일러는 뭐라고 말합니까? –
"그리고 익명 클래스의 인스턴스를 외부 클래스의 private 필드에 할당하십시오."-> 예제에서이 작업을 수행하고 있음을 볼 수 없습니다. "functionOne()"에 새 로컬 변수를 사용 중입니다. –