C#
C#_인터페이스의 장점: 기능을 빠트리지 않고 입력
S_pot
2021. 6. 4. 14:51
interface Phone
{
void Call();
void Recv();
}
// 자동으로 코드생성 가능
class Sami : Phone // interface Phone을 상속받으면 call()과 Recv()를 모두 사용하지 않으면 실행되지 않는다.
// 실수로 기능을 빼먹는 것을 방지한다.(인터페이스의 장점)
{
public void Call()
{
Console.WriteLine("나 사미전화긴데 전화 검");
}
public void Recv()
{
Console.WriteLine("나 사미전화긴데 전화 받음");
}
}
class Hong : Phone // 자동으로 코드생성 가능
{
public void Call()
{
Console.WriteLine("나 홍전화긴데 전화 검");
}
public void Recv()
{
Console.WriteLine("나 홍전화긴데 전화 받음");
}
}
class Helgi : Phone // 자동으로 코드생성 가능
{
public void Call()
{
Console.WriteLine("나 헬지전화긴데 전화 검");
}
public void Recv()
{
Console.WriteLine("나 헬지전화긴데 전화 받음");
}
}
class Program
{
static void Main(string[] args)
{
Sami aSami = new Sami();
Helgi aHelgi = new Helgi();
Hong aHong = new Hong();
Phone[] aPhone = new Phone[] { aSami, aHelgi, aHong };
// 배열을 이용해 한번에 실행
foreach (var Temp in aPhone)
{
Temp.Call();
}
}
}
