seong

19 객체 지향,절차지향 본문

자바/자바 실습

19 객체 지향,절차지향

hyeonseong 2022. 8. 1. 10:50

절차 지향이란?

  • 문제를 해결하는 절차를 중요시 하게 하는 방법이다.
  • 절차들은  모두 함수, 프로시저 라는 단위로 묶인다.

단점

  • 유지보수가 어렵다.
  • 개발할때 순서대로 작성 하기 때문에  비효율 적이다.

객체 지향이란?

  • 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들어, 객체를 서로 상호작용을 시켜주는 프로그래밍 방식이다.
  • 객체 지향에서 상태는 행위를 통해서만 변경이 가능하다.

ex) 믹서기(행위), 사과(상태) 가 있다.

  • 믹서기를 가져온다 
  • 믹서기에 사과를 넣는다 
  • 믹서기로 사과를 갈아준다  (행위)
  • 사과는 갈아진 사과가 된다.(상태)
  • 중요하게 봐야할 점
    • 행위를 함으로써 상태가 바뀐다.
    • 믹서기와 사과는 서로 독립적이다.(어떠한 행동에 대해 책임을 지지 않는다)
    • 서로 상호작용을 할 수 있다.

객체 지향의 특징

1. 추상화

  • 공통적인 기능, 속성을 하나로 묶어 이름을 붙혀준 것.
    계산기를 예로 더하기,빼기,나누기,곱하기를 객체 라고 부르며, 이것들을 하나로 묶어주는 것을 계산기이다.
  • 계산하는 방법들을 객체라고 하며(계산되는 숫자들은 인터페이스라 한다.),  계산기로 묶는것을 추상화 라고한다.

2. 캡슐화

  • 서로 관련있는 데이터와 함수를 하나의 객체로 묶어준다.
  • 객체에 필요한 변수와 함수를 하나로 묶어주고, 보여줄 필요가 없는 데이터들은 숨겨준다. (은닉화 라고도 한다.)
  • 하나로 묶는 것들은 모두 함수를 통해서만 접근 해야한다.

3.상속성(중요)

  • 상위 개념의 특징을 하위 개념물려 받는것을 말한다.
  • 상위 클래스에 1,2,3이 있다.
  • 하위에는 4,5,6 이라고하자.
  • 상위 클래스를 상속 받은 하위는 1,2,3,4,5,6이된다.

4.다형성(중요)

  • 다형성이란 객체가 취하는 동작이 상황에 따라서 달라지는 것을 의미한다.
  • 즉, 부모와 자식 상속 관계에 있는 클래스에서  상위 클래스의 메시지 하나로 다른 각각의 하위 클래스들이 서로 다르게 동작하는 것이다.