Ch 5 : OOP(Object-Oriented Programming)

TopOfTheHead·2024년 6월 11일

시립대-C# , .NET

목록 보기
2/7
  • Abstract Class(추상클래스) :
    。class의 위계구조(hierarchy)에서 상위에 존재하며 자신을 상속할 수 있도록 하는 틀 역할만을 수행.
    。Instance를 가질 수 없는 class임!
abstract class Animal{}
  • Sealed Class
    。상속을 못하는 최종 class로서 하위 class가 더 이상 존재하지 않는다.
  • Interface
    。어떤 개체를 동작시키기 위해서 다른 개체가 사용가능하도록 정의.
    。서로 다른 계보에 있는 개체에게 공통적인 성질을 부여시 효과적임.
    。일반적인 Class는 단일 상속만 가능하지만 , Interface는 다중 상속이 가능.

개체 ( Object ) :
。상태( state or data ) & 행위 ( behavior )를 의미.
。프로그램에서는 상태(state) = 변수(variable) / 행위(behavior) = 메소드(method)
클래스 ( Class ) :
。실세계의 개체를 정의
。class로 개체 instance로 생성할 수 있다.

class Car{ }
Car car1 = new Car(); // Car class의 개체 생성. 

。class를 개체화 하지 않고 사용 시 static으로 선언하여 사용.

Class 의 특징

  • Encapsulation (캡슐화) :
    。하나의 class 안에 관련된 변수(field) 또는 method , property를 담는것을 의미.
    。데이터 구현 시 상세는 외부 노출을 막을 수 있다.
  • Inheritance (상속) :
    。하위 class는 상위 class의 속성(variable 등) , Method를 상속.
    。Code Re-Use : 하위 class는 상위 class의 속성을 기술하지 않아도 코드양을 줄이면서 프로그래밍이 가능.
    。하위 is-a 조류
  • Polymorphism(다형성) :
    。 class는 여러가지 형태를 가질 수 있는 것을 의미.
    。 예를 들어 상위 메소드 실행 시 이를 상속한 class의 override된 메소드가 실행.
profile
공부기록 블로그

0개의 댓글