63. 인터페이스(Interface)
.NET프로그래밍/C# 3.5 SP1 2009. 8. 14. 15:46 |
==> 인터페이스.cs
using System;
public class 인터페이스
{
public static void Main()
{
Sonata sonata = new Sonata();
sonata.Run();
sonata.Left();
sonata.Right();
sonata.Back();
}
}
==============================================================================================
==> Car.cs
using System;
// Interface : ISO 규격 : 전세계표준
public interface IIso // 인터페이스 이름 : I대문자 그다음 첫자도 대문자로 표기한다.
{
void Run(); // 이름만 정의(멤버가 없다.)
}
// Interface : KS 규격 : 한국표준
public interface IKs
{
void Back();
}
// Abstract : 현대자동차 규격
public abstract class Hyundai : IIso, IKs // Hyundai는 IIso, IKs의 상속을 받는다.
{
public void Run() { Console.WriteLine("전진"); }
public void Back() { Console.WriteLine("후진"); }
public abstract void Left(); // 추상메서드
}
// Class : Sonata
public class Sonata : Hyundai // Sonata는 Hyundai의 상속을 받는다.
{
public override void Left()
{
Console.WriteLine("좌회전");
}
public void Right()
{
Console.WriteLine("우회전");
}
}
/*
- 추상클래스는 추상메서드 외에도 일반메서드들도 와도 된다.
- 인터페이스와 추상클래스는 멤버내용( {~} )이 없다. 이름만 있다.
*/
'.NET프로그래밍 > C# 3.5 SP1' 카테고리의 다른 글
"상속(Inheritance)" 필기 (0) | 2009.08.14 |
---|---|
64. 봉인클래스(Sealed) (0) | 2009.08.14 |
62. 추상클래스(Abstract) (0) | 2009.08.14 |
61. ToString메서드오버라이드 (0) | 2009.08.14 |
60. 부모의 멤버접근 (0) | 2009.08.14 |