C# - 인터페이스 문제 풀이
·
C#
과제) 인터페이스 구현RPG 게임에 수많은 NPC가 있습니다. 어떤 NPC는 그냥 아무 기능 없이 가끔 랜덤한 시간에 대사를 뱉기도 하고, 특정 NPC는 플레이어와 G와 같은 키로 상호작용을 하여 강화 혹은 창고와 같은 기능을 수행할 수 있습니다.다음 제작 요구사항에 맞추어 필요한 내용이 있다면 다양한 필드/프로퍼티/메소드를 추가하시면 됩니다. 클래스도 필요하다면 추가해주시기 바랍니다. 너무 이상한 거 있으면 물어봐주시기 바랍니다.NPC 뼈대 클래스 작성모든 NPC들이 상속받을 추상클래스를 하나 만듭니다.모든 NPC는 좌표 x를 가지고 있습니다.모든 NPC는 이름을 가지고 있습니다.플레이어어와 상호작용 할 수 있는 특정 NPC들이 사용할 인터페이스 제작이름은 IInteractable을 추천드립니다.이 인..
C# - 인터페이스 (Interface)
·
C#
인터페이스 (Interface)클래스나 구조체가 반드시 구현해야하는 메서드와 프로퍼티의 규약을 정의하는 요소다.즉 특정 기능 구현을 강제하는 역할이다.얼핏 추상 클래스와 비슷한 역할처럼 보이지만 일반 필드는 가질 수 없고 메서드 시그니쳐와 자동 구현 프로퍼티만 선언할 수 있다는 차이점이 있다. interface IInteractable // 인터페이스 인터페이스명{ void Interact(); // 반드시 구현되어야 할 메서드로 구성 // 필드는 가질 수 없음 int MyNum { get; set; } // 프로퍼티는 됨. 프로퍼티는 메서드 취급} 이렇게 간단하게 구현할 수 있다.이렇게 인터페이스를 구현한 클래스는 Interact() 메서드와 MyNum 프로퍼티를 반드시 정의해야 한다...
C# - 추상 클래스 (Abstract Class)
·
C#
추상 클래스 (Abstract Class)완전한 구현체가 아닌, 객체 지향 프로그래밍에서 공통된 뼈대만 제공하는 클래스를 말한다. 주요 특징은 다음과 같다.인스턴스화 불가능 : 직접 new 키워드로 객체를 만들 수 없다상속 전용 : 다른 클래스가 상속받아 구체적인 기능을 구현하는 용도로만 사용된다.추상 메서드 (Abstract Method) : 자식 클래스에서 반드시 재정의 하도록 강제하는 메서드를 포함할 수 있다.일반 메서드, 필드, 프로퍼티도 포함 가능 : 단순 뼈대만 있는 인터페이스와 달리, 일부 기본 구현을 제공할 수 있다. 즉, 추상 클래스는 부분적으로 구현된 클래스이자 뼈대가 되는 클래스다. abstract class MyClass{ // 추상 메서드 (내용 없음. 자식 클래스에서 반드..