Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 회고 #주간회고
- Java환경
- OOP
- String
- JAVA기본
- 회고록
- 시작 #꾸준히 #과하지않게
- 글 foramt
- 코딩테스트
- WSL2 #권한
- 사용자계정 #WSL2
- WSL #Linux #ubuntu
- 코드스테이츠 #
- 정리글 작성법
- jvm
- 인터넷 #ISP
- 호스트주소 #Host주소
- Git #회고록
- 에러해결
- mapstruct
- 공부방식
- git #intellij
- 피드백
- 회고
- 코드스테이츠 #회고록
- 롤중독
- 네트워크 기초
- 몰입학습 #몰입
- 백엔드로드맵
- 회고록_코드스테이츠
Archives
- Today
- Total
느리더라도 꾸준히
회고록(12) - 상속, 캡슐화 본문
1. 지금 현재, 당신의 기분이나 느낌을 표현해 주세요.
오늘은 배웠던 캡슐화를 통해 어떻게 코드 낭비를 막는건지, 실제 코드로 작성하다가 모든 시간 다 사용했다. 뿌듯하면서도, 이렇게 시간을 투자했음에도 객체지향의 캡슐화를 70% 이해했나... 싶기도 하다. 절대적인 시간과 반복이 필요해보인다.
2. 오늘 무엇을 학습한 내용 중 지금 떠올릴 수 있는 단어를 모두 나열해 주세요.
상속, 포함관계, overwriting, super, super(), 캡슐화, 접근제어자, 패키지, import문
3. 2에서 작성한 단어를 가지고, 오늘의 학습 내용을 설명해 보세요.
상속 ( extends keyword )
상위 클래스의 코드를 재사용하여 하위클래스에 가져와 확장하는 기능이다.아래 장점들을 가진다.
- 코드 중복을 줄일 수 있다.
- 상위 클래스를 이용하여 다형적 표현이 가능하다.
- 오버라이딩을 통해 다형적 특성을 가질 수 있다.
super 와 super()
super는 상위 클래스 인스턴스를 의미한다.
super()는 상위 클래스의 생성자를 호출하는것을 의미한다.
캡슐화
한 객체의 필드와 메서드 구현방식을 하나의 캡슐로 만들어 데이터를 보호하는 것을 말합니다.
캡슐화의 목적
- 내부 데이터(필드와 메서드)를 외부에서 접근하지 못하게 하여 은닉함.
- 내부 데이터에 대한 불필요한 정보가 최대한 밖으로 나가지 않도록 함
- 메서드의 구현정보를 해당 메서드를 호출하는 객체에게 알려주지 않음.
이를 통해 코드 중복을 줄여주고, 유지보수를 용이하게 만들어준다.
접근제어자
Java에서는 캡슐화를 만족시키위해 접근제어자를 사용합니다. private, default, protected, public 순으로 접근 가능 범위가 증가합니다.
접근제어자를 이용하여 (1)클래스 외부로 데이터 노출을 방지 하고, (2) 외부에서 클래스 내부의 데이터(속성이나 기능)의 임의적인 변경을 못하게 합니다.
getter setter
접근제어자와 함께 사용하면, 캡슐(객체)내 데이터를 효과적으로 보호할수 있습니다.
4. 설명하기 어려운 단어가 있다면, 그 이유는 무엇인가요?
캡슐화가 코드 중복을 줄여주고 유지보수를 용이하게 해주는 방식을 코드로 구현하는 건 쉽지 않았다.
5. 그 단어를 스스로 설명할 수 있기 위해서 누군가에게 질문을 한다면, 어떤 질문을 해야 할까요?
캡슐화를 통해 어떻게 코드 낭비를 줄이고 유지보수를 줄일 수 있는지 코드 예시를 들어보세요.
'개발' 카테고리의 다른 글
온라인 공부 효과 올리는법 (0) | 2022.10.19 |
---|---|
개발 글 쓰기 format (0) | 2022.10.19 |
48일차 - 결정장애자의 결정내리기 (0) | 2022.03.12 |
Comments