출처 : https://www.youtube.com/watch?v=IeLWSKq0xIQ
1. 캡슐화(Encapsulation)
클래스 내부에 함수와 데이터를 모두 포함하고 함수나 메소드가 인수를 취할 필요가 없다.
this 키워드를 이용하여 데이터에 직접 접근할 수 있다.
필드 또는 클래스를 private으로 선언하여 외부에서 접근, 수정하는 것을 보호할 수 있다.
(공개도 가능하다.)
- 함수와 메소드의 차이 : https://zeddios.tistory.com/233
함수(Function) VS 메소드(Method)
안녕하세요 :) Zedd입니다. 갑자기 Swift에서 함수와 메소드의 명칭..? 언제 함수라고 불러야하고 메소드라고 불러야하는지 제가 정확히 개념을 모르는 것 같아서 정리하려고해요 :) 함수(Function) VS
zeddios.tistory.com
* 메소드는 함수에 포함되는 개념이다.
* 함수는 특정 작업을 수행하는 코드 조각이고, 메소드는 구조체, 클래스 등에 포함되어 있는 함수를 메소드라고 부른다.
2. 상속(Inheritance)
공통적인 부분을 부모 클래스로 구현하고 자식 클래스에서 상속하면 부모 클래스의 모든 속성과 메소드를 상속한다.
코드를 더 작은 단위로 나누고 재사용할 수 있다.
3. 추상화(Abstraction)
C++의 아버지 : act of specifying a general interface hiding implementation details
세부 구현 정보를 숨긴 채로 인터페이스를 활용하여 기능을 사용할 수 있도록 한다.
4. 다형성(Polymorphism)
Poli : 여러 개, morphos : 형태, 모양
메소드 오버라이딩이 가능하다.
오버라이딩된 메소드의 반환값은 부모 메소드의 자료형과 같아야 한다.
메소드 오버라이딩의 규칙(자료형 동일) 덕분에 클래스의 핵심은 그대로 있고 구현 방식의 모양은 달라질 수 있다.
'프로그래밍 > 기타' 카테고리의 다른 글
백준 1977 완전제곱수 c++ (0) | 2022.06.15 |
---|---|
Visual Studio Debug (0) | 2022.05.30 |
리팩터링 (0) | 2022.05.18 |
댓글