[개인공부]

Walter Mitty·2022년 10월 30일
0

개인공부

목록 보기
1/40
post-thumbnail

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

  1. 캡슐화(Encapsulation):
  • 객체의 데이터(필드), 동작(메서드)을 하나로 묶고 실제 구현 내용을 외부에 감추는 것
  • 외부 객체는 객체 내부의 구조를 알지 못하며 객체가 노출해서 제공하는 필드와 메서드만 이용할 수 있다.
  • 필드와 메서드를 캡슐화하는 이유:
    • 캡슐화하여 외부의 잘못된 사용으로 인해 객체가 손상되지 않도록 보호하기 위함이다.
    • 접근 제한자를 통해 캡슐화된 멤버를 노출시킬 건지, 숨길 건지 결정한다.




2. 상속(Inheritance):

  • 부모객체가 자기가 가지고 있는 필드와 메소드를 자식 객체에 물려주어 자식 객체가 사용할 수 있도록 하는 것이다.
  • 상속의 장점:
    • 코드의 재사용성을 높여준다
      • 잘 개발된 부모 객체의 필드와 메소드를 자식이 그대로 사용할 수 있어서 자식 객체에서 중복 코딩을 하지 않아도 된다.
    • 유지 보수 시간을 최소화시켜 준다.
      • 부모 객체의 필드와 메서드를 수정하면 모든 자식 객체들은 수정된 필드와 메서드를 사용할 수 있다.




3. 다형성(Polymorphism):

  • 사용 방법은 동일하지만 실행 결과가 다양하게 나오는 성질을 말한다.
  • 다형성을 구현하기 위해서는:
    • 자동 타입 변환과 재정의 기술이 필요
      • 여기서 기술이란, 상속과 인터페이스 구현을 통해 얻어진다.

클래스

  • 클래스의 두가지 용도:
    1. 라이브러리 클래스: 실행할 수 없으며 다른 클래스에서 이용하는 클래스
    2. 실행 클래스: main()메서드를 가지고 있는 실행 가능한 클래스

  • 클래스 선언
    • 객체 초기화 역할을 담당하는 생성자
    • 객체에 포함딜 필드와 메서드를 선언하는 코드

  • 클래스의 구성멤버
    • 생성자 : new 연산자로 객체를 생성할 때 객체의 초기화 역할
    • 필드 : 필드는 객체의 데이터를 저장하는 역할
    • 메서드 : 객체가 수행할 동작. (함수)
      • 메서드는 객체와 객체간의 상호 작용을 위해 호출됨

1개의 댓글

comment-user-thumbnail
2022년 10월 30일

오늘도 잘 읽고 갑니다!
정리내용에 대한 간단한 예제도 써보면 좋을 것 같아요!
화이팅!!

답글 달기