get, set으로 은닉성을 챙길 수 있다는 말
335
작성한 질문수 5
앞서 강의에서 은닉성을 지키기 위해
private int variable1
public int getVariable1() { return variable1; }
public int setVariable1(int hp) { this.variable1 = hp; }
로 사용을 하여 클래스 내부의 민감한 변수를 아무나 건드리는 걸 방지한다고 이해했습니다.
그런데
public int Hp { get; set; }
이렇게 사용을 하면 민감한 변수라고 정했던 Hp 변수를 누구나 변경또는 사용할 수 있지 않나요? 강의에서 말씀하셨던 디버깅에 용이하다는 건 알겠으나, 은닉성이 지켜진단 말이 잘 이해가 가질 않네요 ㅠㅠ 도움주시면 감사하겠습니다.
답변 2
1
public int Hp { get; set; }
이거랑
private int variable1
public int getVariable1() { return variable1; }
public void setVariable1(int hp) { this.variable1 = hp; }
이거는 100% 동일한 의미입니다.
진짜로 내부적으로 컴파일러가 그렇게 코드를 만들어줍니다.
은닉성은 [위험한 것은 숨기겠다]는 의미이고,
진짜 public int Hp {get;set;} 을 했다는 의미는
Hp를 get/set하는 것 모두 안전하고
누구나 해도 된다는 의미로 이해할 수 있겠습니다.
Generic에 대한 질문 있습니다.
0
97
2
2022 버전에 커뮤니티 버전이 없는데 2026 버전으로 해도 무관?
0
203
2
다형성 캐시 문제
0
113
3
.
0
71
1
프로퍼티 강의 질문 있습니다.
0
79
1
이후 커리 질문
0
86
1
static
0
91
2
강의에는 새로운 클래스 파일을 생성하면...
0
72
1
생성자의 이름 선언
0
65
1
9:03 Divide(10 , 3) 부분 질문입니다
0
88
1
깃허브 관련 질문 있습니다.
0
239
1
비쥬얼 스튜디오 업데이트가 된건가요..? 매개변수 오류 관련 질문
0
249
1
C# 시리즈 || C++ 시리즈 자료구조 강의에 대한 질문입니다!
0
306
2
Activator 질문있습니다
0
333
1
이넘 타임 선언 질문
0
348
1
Sort 오름차순, 내림차순
0
323
1
질문 있습니다.
0
250
1
팩토리얼 문제
0
271
1
Sort함수 질문있습니다.
0
266
1
다형성 함수 질문 있습니다.
0
221
1
질문이 있습니다.
0
229
1
섹션2 연습문제 질문입니다.
0
215
1
안녕하세요~서버에 대해 질문이 있습니다.
1
284
1
텍스트 색깔이 제 편집기와 달라서 수강에 어려움이 있습니다ㅜㅜ
0
397
1





