Page 20 -
P. 20
2 . 2 클 래 스 와 인 터 페 이 스 K O T L I N
코 틀 린 클 래 스 는 자 바 와 상 당 히 다 른 구 문 을 사 용 한 다. S t r i n g 타 입 의 n a m e 이 라 는 프 로 퍼 티 가 들
어 있 는 P e r s o n 클 래 스 를 코 틀 린 으 로 정 의 하 면 다 음 과 같 다.
c l a s s P e r s o n c o n s t r u c t o r ( n a m e : S t r i n g ) {
v a l n a m e : S t r i n g
i n i t {
t h i s . n a m e = n a m e
}
}
이 코 드 와 같 은 일 을 하 는 자 바 코 드 는 다 음 과 같 다.
p u b l i c f i n a l c l a s s P e r s o n {
p r i v a t e f i n a l S t r i n g n a m e ;
p u b l i c P e r s o n ( S t r i n g n a m e ) {
t h i s . n a m e = n a m e ;
}
p u b l i c S t r i n g g e t N a m e ( ) {
r e t u r n n a m e ;
}
}
두 코 드 를 비 교 하 면 코 틀 린 버 전 이 훨 씬 더 간 결 하 다. 몇 가 지 를 자 세 히 알 아 보 자.
● 코 틀 린 클 래 스 는 기 본 적 으 로 공 개 (p u bli c )다. 따 라 서 p u b l i c 이 라 는 단 어 를 쓸 필 요 가 없 다.
클 래 스 를 공 개 하 지 않 으 려 면 p r i v a t e , p r o t e c t e d , i n t e r n a l 변 경 자(m o di fi er )를 지 정 해 야 한
다. i n t e r n a l 변 경 자 는 클 래 스 가 정 의 된 모 듈 안 에 서 만 클 래 스 에 접 근 할 수 있 다 는 뜻 이 다.
코 틀 린 에 는 자 바 의 ‘ 패 키 지 내 공 개 (p a c k a g e pri v at e )’ 에 해 당 하 는 변 경 자 가 없 다( 자 바 에 서 아
무 변 경 자 도 없 는 클 래 스 는 같 은 패 키 지 안 에 서 만 접 근 할 수 있 다). 자 바 와 달 리 p r o t e c t e d
는 클 래 스 를 확 장 하 는 경 우 에 만 사 용 할 수 있 고, 같 은 패 키 지 안 에 있 는 다 른 클 래 스 에 서 는
p r o t e c t e d 클 래 스 에 접 근 할 수 없 다.
● 코 틀 린 클 래 스 는 기 본 적 으 로 상 속 불 가 (fi n al)다. 그 래 서 코 틀 린 과 동 등 한 자 바 코 드 에 서 는
클 래 스 를 f i n a l 변 경 자 로 선 언 한 다. 자 바 에 서 대 부 분 클 래 스 는 f i n a l 로 선 언 되 어 야 하 지 만
0 5 4