(기술 면접) getter/setter를 사용하는 이유

(1) 게터/세터를 사용하는 이유

프로그래밍 시 일반적으로 외부에서 객체의 데이터(필드)에 직접 접근하는 것을 차단합니다.

= private access modifier로 객체의 데이터(필드)를 차단하고 각 필드의 getter/setter에 접근하는 방식을 사용

왜 이런 식으로 프로그래밍합니까? 개체 무결성보장하기 위해 ! (객체 외부에서 직접 접근하는 경우 객체의 상태에 해당하지 않는 값을 제공하여 객체의 무결성을 깨뜨릴 수 있습니다.)

전. 가중치 외부에서 직접 접근할 때 가중치 필드가 존재하는 경우 -100 무결성이 깨질 수 있습니다.

이를 방지하기 위해 필드를 비공개로 설정하고 외부 접근을 제한한 후, 수신된 값을 setter로 내부적으로 처리하여 필드에 삽입하는 방식 사용(내부적으로 잘못된 값이 입력되는 것을 방지할 수 있음)