카테고리 없음
객체 지향 프로그래밍이 무엇인가?
meomdms
2025. 3. 10. 14:57
객체를 기반으로 프로그램을 설계하는 것이다. 주로 구조체나 클래스로 객체를 정의하여 사용하는데, 클래스나 객체 안엔 데이터와 메서드가 있다.. 속성을 정의하고 메서드로 객체의 행동을 정의한다. 객체지향의 핵심 원칙에는 캡슐화 상속 추상화 다형성이 있다. 객체지향의 장점으로는 코드의 재사용이 용이하다는 것이다. 또한 유지보수가 쉬우며 확장성이 뛰어나다. 예를 들어 붕어빵 틀(클래스)을 만들면 동일한 형태의 붕어빵(객체)을 여러 개 생성할 수 있는 것과 같다.
캡슐화(Encapsulation)
- 데이터를 숨기고(private) 필요한 기능만 외부에 공개하는 개념
상속(Inheritance)
- 기존 클래스를 확장하여 새로운 클래스를 만드는 것
다형성(Polymorphism)
- 같은 메서드명을 사용해도 객체에 따라 다르게 동작하는 것
- 오버라이딩(Overriding): 부모 클래스의 메서드를 자식 클래스에서 재정의
- 오버로딩(Overloading): 같은 이름의 메서드를 매개변수 타입/개수에 따라 다르게 사용
추상화(Abstraction)
- 불필요한 세부 사항은 숨기고, 핵심 기능만 노출하는 것
- abstract 키워드 또는 interface 사용