1월 7, 2015의 게시물 표시

C#, 여러 인터페이스를 한꺼번에 상속하자!

이미지
이번시간에 알아볼 것은 인터페이스의 다중상속입니다. 클래스든.. 인터페이스든 객체지향프로그램에서는 상속이 가능하지만.. 큰 차이점이라면.. 클래스는 하나만 상속이 가능하지만 인터페이스는 여러개를 한꺼번에 상속받을 수 있습니다. 그 이유가 무엇이냐면.. 인터페이스는 외형적인 것 을 물려받기 때문에 문제가 없이 안심하고 사용할 수 있습니다. 아래와같은 인터페이스가 2개가 있는데  FlyingCr이라는 클래스에서  : Irun,Ifly 을 이용해서 2개를 상속받았습니다. 이것은 책에 나와있는 예제를 한번 실행해봤습니다 이런표현이 가능하네요..   그래서 결과적으로.. 이렇게 FlyingCr클래스타입의 객체를 생성하여서 Run(), Fly() 메소드를 실행하는것이 가능합니다.   인터페이스2개를 상속하였죠.. 또한.. 클래스의 상속에서 사용할 수 있는 연산자가 is와 as가 있었죠?  지난시간에 했었던것인데 기억이 나실련지 모르겠네요.. is의 경우 객체가 해당형식에 해당하는지 검사해서 결과값을  true,false로 반환하는것이고.. as의 경우 참조형식과 비슷하게 되지만.. false 일경우 객체참조를 null로 한다라는거였죠.. 참조: 클래스의 is, as연산자에 대해서.. 아무튼.. as연산자를 이용해서.. 인터페이스에 해당하는 형식이 있으면.. 아래 구분이 정상적으로 실행되겠죠.. 아래는 책에 나와있는 예제를 한번 테스트해봤습니다. 메인 클래스에서 보시면.. "----" 을 기준으로 위와 아래에.. Run(),Fly()메소드를 실행하는것을 해봤는데 잘됩니다. 햇갈리고 복잡한데요.. 예제같은것을 많이 테스트해봐서 손에 익혀야 할 것 같습니다. 책으로 봐서는 잘 알겠는데 실제 작성해보라고하면.. 정말 손이 안떨어집니다.^^ 이상으로 인터페이스의...