본문 바로가기

유니티, C#

클래스, 추상 클래스, 인터페이스 비교

  클래스 추상 클래스 인터페이스
키워드 class abstract class

interface

기능 필드와 메서드로 이루어진 객체 추상 메서드를 하나 이상 가진 클래스, 자식 클래스에 대해 오버라이딩 강제

메서드의 선언부만 가짐,  모든 메서드가 추상 메서드라서 상속받은 클래스는 반드시 구현해야함

변수 선언 가능 가능 불가능
함수 선언 가능 가능 가능
함수 구현 가능 추상 메서드 구현 불가능 불가능
객체 생성 가능 불가능 불가능
목적 객체를 나타내기 위한 틀 코드의 재사용 및 확장 반드시 구현해야하는 요구사항

 

상속 가능 여부

    부모 클래스 (행) →

↓자식 클래스 (열)

  일반 클래스 추상 클래스 인터페이스
일반 클래스 O

O

(오버라이딩 필수)

O

(오버라이딩 필수)

추상 클래스 O O O
인터페이스 X X O

 

 

 

참고

https://jjoreg.tistory.com/entry/추상-클래스와-인터페이스의-차이가-대체-뭐죠

'유니티, C#' 카테고리의 다른 글

스크롤뷰 최적화 (RectMask2D)  (0) 2020.03.19
마우스 스와이프 구현 로직  (0) 2020.02.10