[JAVA] 객체지향프로그래밍(OOP) 1
@욕심쟁이
·2020. 8. 12. 09:40
객체지향프로그래밍(OOP)
- OOP(Object Oriented Programming)
- 현실에 있는 객체들을 프로그램으로 표현하기 위한 기법
- 현실세계의 객체를 만드는데 필요한 설계도를 클래스로 나타내고
해당 클래스를 바탕으로 인스턴스를 생성하여 사용하는 방법
- 객체를 하나씩 조립해서 완성된 프로그램을 만드는 기법
OOP is A.P.I.E
- A(Abstrction) : 추상화
- P(Polymorphism) : 다형성
- I(Inheritance) : 상속성
- E(Encapsulation) : 은닉성(캡슐화)
객체지향 개발 3단계
1. 분석단계 - 객체모델링 : 속성과 기능(동작)을 추려내 멤버변수와 메소드를 정의설계
→ 객체가 갖는 속성(구성요소)과 동상(기능)을 파악하는 과정
(ex. 사람의 속성 : 이름, 나이, 키 등, 기능 : 말하기, 먹기 등)
2. 설계단계 - 클래스 정의 :
→ 객체의 속성과 동작을 클래스로 정의하는 과정
(속성 : 멤버변수 , 동작 : 메서드)
→ (ex. 속성: 이름(name), 나이(age) 등)
→ (ex. 동작 : 말하기(talk(), 먹기(eat()))
3. 구현단계 - 객체(인스턴스)생성 및 사용
→ 클래스(설계도)를 바탕으로 현실세계의 객체를 컴퓨터 메모리상에 실체화 시켰을때 인스턴스(instance) 라고 함
→ 인스턴스를 생성(인스턴스화)하여 인스턴스 내부의 멤버변수와 메서드를 사용하는 것
(ex. 사람(Person) 클래스를 홍길동, 이순신이라는 사람 객체로 생성)
참고! public접근제한자는 파일이름과 동일한 이름의 클래스 선언에만 붙일수있다.
'IT > JAVA' 카테고리의 다른 글
[JAVA]멤버변수(필드) (0) | 2020.08.12 |
---|---|
[JAVA] 객체지향프로그래밍(OOP) 2 (0) | 2020.08.12 |
[JAVA]메서드(Method)란? (0) | 2020.08.11 |
[JAVA] 향상된 for문 (0) | 2020.08.07 |
[JAVA] 다차원 배열 (0) | 2020.08.07 |