inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

김영한의 실전 자바 - 중급 2편

타입 매개변수 제한2 - 다형성 시도

Getter 와 setter 관련 질문

193

준호

작성한 질문수 6

1

강의 늘 잘보고 있습니다. 다름이아니고. 제가 중급 1편까지 자바로 하다가 제목표인 안드로이드 앱 개발을 위해서 중급 2편은 코틀린으로 해보고 있습니다. 코틀린 문법을 찾아보면서 하는중인데 코틀린에는 getter와 setter가 없더라고요. 그래서 변수에 직접 접근을해서 set과 get을 하고있습니다(dogHospital.animal = dog 이런식으로요.) 이렇게 코틀린은 그냥 변수에 직접 접근하는 수밖에 없는지 궁금하구요. 또하나 의문은 자바에서 캡슐화를 위해 필드를 private으로 하고 getter setter로 변수에 접근을 하는데 getter와 setter가 어차피 public 이면 캡슐화에 의미가 있는지 궁금합니다. 현업에서는 어떻게 쓰나요??

java 객체지향

답변 1

1

나무늘보

안녕하세요.준호님, 공식 서포터즈 코즈위버입니다.

코틀린에서는 객체의 getter/setter를 기본적으로 제공합니다. 그래서 {인스턴스.필드} 코드는 기본 getter 를 호출하게 되며, {인스턴스.필드 = 값} 은 기본 setter 를 호출합니다.

 

자바 실무에서는 DTO 객체일 경우 getter/setter를 모두 제공하나 엔터티의 경우는 getter/setter 를 모두 제공하지 않고 생성자를 통해 초기화를 제공하는 경우가 일반적입니다. 또 Controller/Service/Repository 등의 컴포넌트도 getter 혹은 setter를 제공하지 않는게 일반적입니다.

 

감사합니다.

제네릭 타입 매개변수 제한과 관련한 문의입니다.

0

78

3

강의가 좀 버겁다 느껴질 때 학습방법 문의

1

129

4

제네릭 반환값 및 파라미터 선언 방식의 변화 <T> T

0

57

1

new T()가 안 되는 니유

0

96

1

안녕하세요, 문제와 실행 결과가 다른 부분이 있어 제보드립니다.

0

97

2

자바 로드맵 선택 질문

0

110

2

실전 자바 중급 - 2편 후 추천 강의

0

174

2

실프로젝트에서 Java25버전 사용

0

115

1

Arrays.sort

0

66

1

블로그 작성 시, 저작권 문제에 대하여

0

165

1

중급2편 56강의 bucket.add(value); 메서드가 이해가 안됩니다.

0

93

3

pop()과 poll()의 차이

0

94

1

특정 index의 노드 조회하기 질문

0

65

2

List.of() 비어있는 불변 리스트 생성

0

80

2

문제2: 개 타입 반환

0

52

2

[리뷰] 중급2편까지 겨우 완강 했습니다.

0

110

2

문제와 풀이1 Ex2와 Ex3

0

64

2

노드 삭제시 노드 null값으로 초기화

0

75

2

강의영상에 대한 질문

0

56

1

타입 매개변수 제한

0

59

1

compareTo

0

67

1

직접 구현하는 연결리스트 3 - 추가 부분 질문있습니다

0

97

3

섹션 8-58 equals and hashcode 에서 코드가 다르게 생성됨

0

68

2

퀴즈 오류 관련 문의

0

108

1