Kotlin Property
Kotlin Property 캡슐화 객체가 가지고 있는 변수는 메서드에 구현한 코드가 정상적으로 동작하기 위한 데이터를 담고 있다. 사람의 나이는 - 일 경우가 없으므로, 이러한 변수의 속성에 따라서 정상적으로 동작하기 위해서 사용한다. 이에 변수의 직접적인 접근을 차단하여, 외부에서 값을 변경하지 못하도록 막는 것을 캡슐화라고 부른다. 접근제한자를 통해서 해당 함수, 변수에 접근할 수 있는 것을 의미한다. Property 캡슐화가 적용된 변수는 외부에서의 접근이 차단된다. 캡슐화가 적용된 변수에 대해 메서드를 통해 값을 설정하거나, 가져다 사용할 수 있도록 구성한 것을 Property라고 부른다. 변수에 값을 넣는 메서드를 setter라고 부르고, 변수가 가지고 있는 값을 반환하는 메서드를 getter라고 부른다. Java에서는 setter 와 getter를 직접 만들어야 하지만, Kotlin 에서는 Class 의 멤버변수를 지정해주면 기본적으로 Property 로 제공된다. Property 작성 방법은 private 키워드를 변수에 설정하여, 외부에서 접근하지 못하도록 막는다. 주 생성자 사용하기 주 생성자의 매개 변수를 정의할 떄, var, val 로 정의 할 경우, setter, getter가 자동으로 생성된다. 보조생성자에서는 var, val 키워드로 property를 설정 할 수 없다. 클래스의 멤버 변수 var의 경우에는 setter와 getter가 모두 작성된다. val의 경우 getter만 작성된다. Set / get 함수 직접 수정하기 Kotlin 에서 getter와 setter를 직접 구현 할 수 있는 방법을 제공한다. 기본적으로 생성되는 setter와 getter 메서드는 단순 변수에 getter만 setter 역할만을 수행하므로, getter, setter를 변경하고 싶은 경우 아래와 같이 변수 밑에 get(), set() 키워드를 통해서 만들어준다. 여기서 field는 v1 변수를 의미한다. fun mai