본문 바로가기

Game DevTip/C#4

4. C# 인터페이스 및 추상클래스 ,다형성 다음은 블로그 게시글에 적합한, 딱딱한 어투로 정리한 내용입니다. C#의 인터페이스와 추상 클래스, 그리고 다형성의 활용 C#에서는 클래스 간의 관계를 정의하거나 특정 기능을 보장하기 위해 **추상 클래스(Abstract Class)**와 **인터페이스(Interface)**를 사용한다. 이 글에서는 RPG 전투 시뮬레이션을 예시로 하여, 이 두 개념과 더불어 **다형성(Polymorphism)**을 어떻게 활용할 수 있는지 설명한다. 1. 인터페이스란? 인터페이스는 클래스가 따라야 할 **명세(contract)**를 정의한다. 구현을 포함하지 않으며, 오직 시그니처만을 포함한다. 이를 통해 클래스가 특정 기능을 반드시 제공하도록 강제할 수 있다.interface ISpecialAbility{ .. 2025. 4. 21.
3. C# 클래스 클래스의 구분내장형식(built-in Type, 닷넷 프레임 워크)Console, String, math…사용자 정의 현식(user defined type)using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;namespace ConsoleApp1{ class MyFirstClass { static void Staticmethod() => Console.WriteLine("[1] 정적메서드"); void InstaceMethod() => Console.WriteLine("[2] 인스턴스 메서드"); static void Main() .. 2025. 4. 21.
2. C# 배열, 함수, 델리게이트 컬렉션이름 하나로 데이터 여러개를 담을 수 있는 그릇C# 컬렉션 - 배열(array) 리스트(list), 사전(dictionary)등등배열var array = new string[] {"Array", "List", "Dictionary"};foreach (var arr in array) {Console.WriteLine(arr);}- 출력값ArrayListDictionary리스트var list = new List {"Array", "List", "Dictionary"};foreach (var item in list ) {Console.WriteLine(item );}- 출력값ArrayListDictionary사전(Dictionary)var dictionary= new Dictionary{{0,"Array.. 2025. 4. 21.
1. C# 기초 1. CLR의 타입 시스템 - CLR : 공통 언어 런타임, 즉 모든 C# 코드의 실행 환경 - 타입 안정성 : 잘못된 타입 사용방지 - 모든 타입은 'System.Object'에서 파생됨. 2. 값 타입 - struct, enum 두가지 형식(값 형식은 sealed) - int, long, double, char, bool등, - 스택에 할당되며, 값 자체를 저장한다. - 변수간의 복사는 값 자체의 복사이다.int // System.Int32long // System.Int64double // System.Doubleint a = 0; // System.Int32 a = new System.Int32(); - 변수간 복사는 값자체의 복사이므로, GC 관여없이 효율적이다. int a = 10;in.. 2025. 4. 21.