다음 코드의 실행 결과는?
다음 코드의 실행 결과는?
abstract class Shape
{
public abstract void draw();
public void display()
{
Console.WriteLine("Shape");
}
}
class Circle : Shape
{
public override void draw()
{
Console.WriteLine("Drawing Circle");
}
}
class Program
{
static void Main(string[] args)
{
Circle myCircle = new Circle();
myCircle.draw();
myCircle.display();
}
}
정답: A
자식 클래스는 추상 메서드를 구현하고 일반 메서드를 상속받습니다.
실행 과정:
1.
Circle myCircle = new Circle()
: Circle 객체 생성2.
myCircle.draw()
:⦁ Circle에서 override한 draw() 실행
⦁ "Drawing Circle" 출력
3.
myCircle.display()
:⦁ Shape에서 상속받은 display() 실행
⦁ "Shape" 출력
상속 관계:
⦁ 추상 메서드
draw()
: 반드시 구현⦁ 일반 메서드
display()
: 그대로 상속
💡 학습 팁
이 문제를 포함한 C# 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.