-oop
믹서기 > 사과를 갈아라 => 무언가를 갈아야 하는 책임이 있는 믹서기
사과 > 행위는 없고 정보만 있음.
- 캡슐화
데이터와 알고리즘을 캡슐에 넣어서 포장한다는 뜻.
- 왜 해야하나?
객체지향 프로그램을 짜면 여러가지 오브젝트가 생김
ex) 요리사, 종업원, 손님이 존재하는 프로그램
오브젝트는 총 3개.
책임 분리( 오브젝트가 해야할 행위 )
- 요리사 : 요리하는 책임
- 종업원 : 손님에게 서빙을 하는것, 계산하는것 등의 책임 ( 주문은 받는거라 자기의 행위가 아님 )
= > 책임을 분리시켜서 적은 이유 : 서빙을 하고 계산을 한다 = 계산을 만 따로 하거나 서빙만 따로 할 수 없음.
- 손님 : 주문하는것.
- 쓰는이유
다른사람이 만든 데이터와 알고리즘을 호출하는 것으로 사용할 수 있기 때문.
-상속 ?
부모클래스가가 자식클래스에게 물려준다는 뜻
ex) 햄버거를 만들었음 > 이후에 더블 치즈 햄버거로 만들어야 함
햄버거에 자식클래스로 더블 치즈 햄버거를 만듦.
상속 가능 ( = 더블 치즈 햄버거는 햄버거라 부를 수 있음. )
= > 부모 클래스는 추상적인 개념으로 잡아 자식태그를 구체적으로 작성함. ( = 다용성을 만족하는 것 )
요약
상태는 행위를 통해서 변경한다
부모 클래스는 추상적인 개념으로 잡아 자식태그를 구체적으로 작성함. ( = 다용성을 만족하는 것 )
객채는 상태와 동작을 가지고 있다. 객체의 상태는 객체의 특징값 (속성)이다.
특징값 : 빨강, 속도 등을 나타냄 등 ( 필드 )
동작 : 기어 바꾸기 가속하기 감속하기 등 ( = 상태가 변경됨 )
'캠퍼스 > Java' 카테고리의 다른 글
| 37. 오버로딩 (0) | 2022.08.02 |
|---|---|
| 36. 생성자 (0) | 2022.08.02 |
| 32.디버깅 (0) | 2022.08.02 |
| 31.private (0) | 2022.08.02 |
| 30. 코드 단순화 (0) | 2022.08.01 |