java final 필드 : 초기화 후에 값을 변경하지 못하게 한다.
java의 클래스들을 뜯다 보면, final 이라던지, static final과 같은 키워드가 생각보다 자주 보인다는 것을 알 수 있어요. 특히, String은 이 키워드가 상당히 많이 붙어있습니다. 이것은 무엇을 하는 것일까요? 한 번 값이 정해지면 그 값을, 수정할 수 없게 만드는 것입니다. 언제 정해질 수 있을까요? 메모리에 올라갈 때. 한 가지 예를 들어보겠습니다. String 클래스 안에는 final 필드인 value가 있습니다. 이것은 문자열의 실제 내용을 저장하기 위한 char형 배열입니다. 이것은 언제 값이 정해지나요? 생성자에서 초기화를 할 때 값이 정해집니다. String 객체 a를 새로 생성해 봅시다. 그러면, 생성자가 호출이 되고, 152 ~ 153번째 줄이 끝나고 나면, val의 ..
코딩/Java
2020. 1. 16. 17:31
최근댓글