void method1()
{
final int a = 10;
TextView tv = (TextView)findViewByID(R.id.btn);
tv.setOnClickListener(new OnClickListener() {
@Override
void onClick(View v)
{
a++;
}
});
}
여기서 변수 a가 final로 지정되지 않으면 생애주기 차이때문에 onClick 메소드 내에서 동일하게 사용할 수 없잖아요. 그럼 JVM이 여기서의 final을 static으로 변환하나요? 만약 static으로 변환한다면 메소드 method1이 종료되어도 변수 a는 메모리상에 살아있는등 완전히 static으로 선언했을때와 동일시해야 맞는 건가요? 감사합니다.