클래스를 선언할 때 abstract를 명시하는 것 말고도 인터페이스가 있다. 뭐 자바에서와 같은 개념이다. 인터페이스는 그 자체가 완전히 추상화 된 클래스다.
An interface is a completely "abstract class", which can only contain abstract methods and properties (with empty bodies)
// interface
interface Animal {
void animalSound(); // interface method (does not have a body)
void run(); // interface method (does not have a body)
}
클래스 상속은 1개만 가능하고, 2개 이상을 상속하려면 인터페이스를 통한 추상화 상속으로만 가능하다. 개념은 자바와 동일하다. 단지 문법만 다르다.
1. Java
Java Class Inheritance (1개) -> extends를 사용
Java Inteface (2개 이상) -> implements를 사용
2. C#
C# Class Inheritance (1개) -> : 를 사용
C# Interface (2개 이상) -> : 를 사용
'개발자 > .NET' 카테고리의 다른 글
C# (C Sharp) .NET5 MVC(Controller)URL 경로 (0) | 2021.01.24 |
---|---|
Visual Studio for Windows 단축키 변경 (0) | 2021.01.24 |
C# (C Sharp) Abstract class, Abstract method (0) | 2021.01.22 |
C# (C Sharp) Inheritance 상속 (0) | 2021.01.22 |
C# (C Sharp) Getter, Setter 자바와 비교 (0) | 2021.01.22 |