C# 인터페이스 (Interface)
인터페이스 란,
C#에서 인터페이스는 클래스가 특정 기능을 구현하도록 강제하는 계약의 역할을 한다.
=> 개인적으로 클래스를 이렇게 구현하라고 하는 가이드의 역할인것처럼 보인다.
인터페이스는 메서드, 속성, 이벤트 등을 정의하지만, 이들에 대한 구현은 포함되지 않는다.
클래스를 구현할 때, 그 인터페이스 들을 구현하여 정의된 기능을 제공해야 한다.
글 쓴 이후 배우며 느낀점 추가
인터페이스와 상속의 차이점은 상속은 같은 계열의 클래스만 받는 느낌이면
인터페이스는 전혀 다른 역할의 클래스라도 공통된 행동을 해야 한다면 구현하는게 좋은것 같다고 생각한다.
인터페이스 기본 구문
인터페이스는 interface 키워드를 사용해서 정의하며, 일반적으로 대문자로 시작하는 이름을 가진다.
인터페이스 구현
인터페이스를 구현하는 클래스는 인터페이스에서 정의한 모든 메서드와 속성을 구현해야 한다.
인터페이스 사용
인터페이스를 사용하여 다양한 클래스의 인스턴스를 동일한 방식으로 처리할 수 있다. => 이를 통해 다형성을 활용할 수 있다.
인터페이스의 장점
1. 다형성 : 인터페이스를 사용하면 서로 다른 클래스가 동일한 인터페이스를 구현하므로, 다양한 객체를 동일한 방식으로 다룰 수 있다.
2. 코드의 유연성 : 인터페이스를 사용하면 코드의 유연성이 향상되며, 나중에 다른 클래스를 추가하거나 수정할 때 기존 코드를 변경하지 않고도 새로운 기능을 추가할 수 있다.
3. 테스트 용이성 : 인터페이스를 사용하면 테스트하기 쉬운 코드 구조를 만들 수 있다.
개인적인 장점 : 객체의 필수적인 기능이 인터페이스에 있으면 까먹고 구현안할 일이 없어진다.
결론
C#의 인터페이스는 다양한 클래스가 특정 기능을 구현하도록 강제하여 코드의 유연성과 재사용성을 높이는 역할을 한다.