반응형
🔧 객체 지향 프로그래밍
OOP(Object Oriented Programming)
프로그램을 객체라는 기본 단위로 나누고 이 객체들 간의 상호작용을 기본 개념으로 하는 프로그래밍입니다.
﹟객체 지향 프로그래밍의 장점
- 코드의 재사용이 용이하다.
- 개발이 간단하다.
- 유지보수가 쉽다.
- 대규모 프로젝트에 적합하다.
﹟객체지향의 4가지 특징
1. 추상화(Abstraction)
- 인터페이스로 클래스들의 공통적인 특성(변수, 메서드)들을 묶어 표현한다.
- 인터페이스와 구현을 분리함으로써, 객체가 가진 특성 중 필수 속성만으로 객체를 묘사하고 유사성만을 표현한다.
- 자바에서 인터페이스, 추상클래스, 추상 메서드
2. 캡슐화(Encapsulation)
- 객체가 독립적인 역할을 할 수 있도록 데이터와 기능을 하나로 묶어 관리한다.
- 실제로 구현되는 부분을 외부에 드러나지 않도록 하여 정보를 은닉할 수 있다.
3. 상속성(Inheritance)
- 하나의 클래스가 가진 특징(함수, 데이터)을 다른 클래스가 그대로 물려받는 것
- 상속을 받은 자식 클래스는 부모 클래스의 특성과 기능을 사용할 수 있다.
- 캡슐화를 유지하기 때문에 클래스의 재사용을 용이하게 만들어준다.
4. 다형성(Polymorphism)
- 같은 이름의 메서드가 클래스 혹은 객체에 따라 다르게 동작하도록 구현하는 것
- 오버라이딩(Overriding), 오버로딩(Overloading)
References
반응형
'🗂 Study > 자바' 카테고리의 다른 글
[Java] 접근제한자 (0) | 2021.08.19 |
---|---|
[Java] 정적(Static)이란 무엇일까? (0) | 2021.08.04 |
[Java] 클래스(Class)와 객체(Object) (0) | 2021.07.30 |
[Java] 추상 클래스와 인터페이스의 차이점 (0) | 2021.07.23 |
[Java] 오버로딩(Overloading)과 오버라이딩(Overriding) (0) | 2021.07.14 |
댓글