2011-12-16 5 views
7

나는 source code of TextView을 읽고 있었다 나는이 코드를 충족 :안드로이드 최종 변수

RectF mTmpRectF = new RectF(); 
float[] mTmpOffset = new float[2]; 
ExtractedTextRequest mExtracting; 
final ExtractedText mTmpExtracted = new ExtractedText(); 

그래서, 거기에 그들이 mTmpRectF을 마지막으로 mTmpExtracted를 정의하지만.

나는 What does "final" do if you place it before a variable?을 읽었으며, 최종 사용 시점을 분석했습니다.

따라서이 두 가지 객체 (mTmpRectF &mTmpExtracted)는이 특정 경우에 최종적일 수 있으므로 final 또는 final로 설정된 다른 이유 (예 : performace 등)가 있습니까? 아니면 개발자 코드 스타일입니까?

감사합니다.

답변

7

나는 추출 된 텍스트가 추출 된 후에 수정할 수 없으므로 추출 된 텍스트가 final로 설정되어 있다고 가정합니다. 여기서 사각형은 get이 수정되면 방해받지 않습니다.

+0

그래서, 필요한 경우를 제외하고, final에 변수를 할당하는 것은 개발자에게이 변수를 변경해서는 안된다는 제한/경고의 일종입니까? –

+1

예, 이것이 이유 때문에 이것이 최종 상태임을 선언합니다. – Blundell