JAVA / OOP - 객체지향의 특징

nGyu·2022년 1월 21일
0
post-thumbnail

💡 OOP → Object Oriented Programming

JAVA는 객체지향 언어라고 하는데, 이 객체지향 언어에서 객체가 무엇인지 개념부터 알아보자.


객체 지향 프로그래밍의 특징

추상화

  • 하위 클래스에 존재하는 공통적인 메소드를 인터페이스로 정의하는것
  • 즉, 공통된 속성/기능을 묶어 이름을 붙히는 것

캡슐화

  • 비슷한 역할을 하는 속성과 메소드들을 하나의 클래스로 모은것
  • 관련있는 함수와 변수를 하나의 클래스 안에 묶은것.
  • 정보 은닉이 된다.
    • 객채 내의 멤버변수에 직접적인 접근을 제한할 수 있다.
    • 메소드만을 이용해 외부와 상호작용을 한다.

상속성

  • 클래스를 재활용(재사용) 목적으로 만들어진 문법적 요소
  • 이미 작성된 클래스 이어받아 새로운 클래스를 만드는 기법.
    • 생상성이 높아지고, 유지보수가 좋아진다
  • 상위 클래스를 하위 클래스에서 상속받게 되면 상위 클래스의 멤버변수나 메소드를 그대로 물려받을 수 있다.

다형성

  • 같은 모양의 함수가 상황에 따라 다르게 동작하는것을 의미
  • 오버로딩(Overloading) , 오버라이딩(Overriding) 가능
    • 오버로딩(Overloading)
      • 함수의 이름은 같지만 매개변수의 개수, 타입등을 다르게 하여 다르게 사용하는것
    • 오버라이딩(Overriding)
      • 상위 클래스의 메소드를 하위 클래스에서 똑같은 이름으로 재정의 하는것
  • 즉, 메소드의 이름은 같지만, 상황에 따라 호출되는 메소드가 다르다
profile
지금보다 내일을, 모레를 준비하자

0개의 댓글