728x90

2025/04/24 3

[C#] 열거형(enum)

열거형(Enum)은 이름이 붙은 상수들의 집합을 정의할 수 있는 데이터 형식이다.값에 의미 있는 이름을 부여하여 코드의 가독성과 유지보수성을 높이는 데 유용하다. 열거형이란?기본적으로 정수형 상수들의 집합관련된 값들을 그룹화할 수 있음기본 값은 int이며, 0부터 시작 기본 문법enum 요일 { 월, 화, 수, 목, 금, 토, 일}이렇게하면, 값을 할당하지 않아도 기본적으로 월=0, 화=1, ...이런식으로 0부터 자동으로 값이 할당된다. - 명시적으로 값 지정도 가능하다.enum 상태 { 대기 = 1, 진행중 = 2, 완료 = 3} 📝 추가 사용예시enum 상태 { 대기, 진행중, 완료}class Program { static void Main() { ..

[C#] 왜 클래스는 다중상속 안 되는데, 인터페이스는 되게했을까?

우선 인터페이스와 다중상속을 요약해보자면 "인터페이스는 이 함수 꼭 구현해!" 라고 강제하는 '규칙'이고,다중상속은 그 '규칙'을 여러 개 동시에 적용할 수 있게 해주는 기능이다. 인터페이스 + 다중상속 = 여러 규칙 동시에 따르기인터페이스를 여러 개 상속하면,그 인터페이스들이 요구하는 메서드를 반드시 다 구현해야 한다.interface IWalk { void Walk();}interface ITalk { void Talk();}class Human : IWalk, ITalk { public void Walk() { Console.WriteLine("걷기"); } public void Talk() { Console.WriteLine("말하기"); }}➡ 이건 Human은 걷고 말할 ..

C#/인터페이스 2025.04.24

[C#] 인터페이스 쓰는이유

인터페이스 쓰는 이유인터페이스 공부하다가, "그냥 함수 정의하면 되지, 인터페이스 왜 써야 해?"가 궁금해서 찾아보았다. 간단히 말하면, 인터페이스는 '약속'이자 '설계도'이다. 예를들어 코드를 살펴보자.class Person { public void Walk() { ... } public void Talk() { ... }}이렇게 해도 Person은 걷고 말할 수 있고, 그 자체로는 문제가 없다.하지만 다른 클래스도 걷고 말해야 한다면? 인터페이스 없을 때의 문제🤔Person, Robot, Dog 클래스가 있다고 해보자. 셋 다 Walk() 메서드를 가진다고 해도,컴파일러는 "이 클래스들이 걷는 기능이 반드시 있음" 을 보장해줄 수 없다. 인터페이스를 쓰면 좋은점1. "Walkable한 ..

C#/인터페이스 2025.04.24
728x90