c#과 객체지향 정리.

Kang Taesu·2025년 11월 19일

내가 알기로 c#은 c++에 ++ 이라서 c4개라서 +4개를 위아래로 배치해서 c# 인걸로 대학교 수업에서 들었던거같다.

c++은 메모리를 직접 관리하는 개념이라 포인터도 쓰고 메모리를 직접관리해줘서 빠른게 장점인거고, c#은 메모리를 직접 관리해서 c++에 비해서는 좀 느린걸로 기억한다.

객체지향구조. oop.

데이터를 객체 구조로 나누어서 이들을 상호작용 하는 방식.

oop의 핵심은 4가지
추상화 - 필요한 특징만 뽑아서 단순화
캡슐화 - 데이터와 이를 처리하는 메서드를 하나로 묶어 외부에서 직접접근하지 못하게.
상속 - 기존 코드를 재사용해서 새로운 클래스를 만듬.
다형성 - 같은 메시지에 대해 다른 동작으로 동작할 수 있게함.

캡슐화의 경우에는 private을 써서 변수를 못건들게하고, TakeDamage(int Damage); 같은 식으로 처리함.

상속 같은 경우에는 몬스터베이스의 AMonsterBase 클래스를 만들고, 내부에 hp, speed 같은 변수와 attack 같은 메서드를 미리 만들어놓고 몬스터가 기본적으로 이용하는걸 만들어둠. 그리고 이걸 상속받아서 원거리 몬스터, 근거리 몬스터, 보스몬스터 같은 것을 만들고 AMonsterBase에 만들어져있는걸 받아와서 쓰니까 새로 만들 필요가 없어짐.

다형성의 경우에는 근거리 몬스터, 원거리 몬스터에 Attack()이라는 메서드를 근거리몬스터, 원거리 몬스터에 각각 오버라이딩해서 메서드를 변경해서 사용하면됨.

profile
심심하당

0개의 댓글