<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>나는 개발자다</title>
    <link>https://developerking.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Sun, 19 Jul 2026 18:39:03 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>평생업</managingEditor>
    <item>
      <title>hex file 수정</title>
      <link>https://developerking.tistory.com/82</link>
      <description>&lt;p&gt;&lt;span&gt;using &lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;var&lt;/span&gt;&lt;span&gt; stream &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;new&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;FileStream&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;path&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;FileMode&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;Open&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;FileAccess&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;ReadWrite&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;{&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; stream&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;Position&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;24&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; stream&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;WriteByte&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0x04&lt;/span&gt;&lt;span&gt;);&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;}&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>C#</category>
      <category>C# hex file 수정</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/82</guid>
      <comments>https://developerking.tistory.com/82#entry82comment</comments>
      <pubDate>Sat, 15 Aug 2020 20:35:11 +0900</pubDate>
    </item>
    <item>
      <title>[기초연금] - 해외체류 60일 이상인 경우</title>
      <link>https://developerking.tistory.com/81</link>
      <description>&lt;p&gt;&lt;span style=&quot;color: #000000;&quot;&gt;해외 체류의 경우 60일 이상 지속 되게 되면&amp;nbsp;&lt;/span&gt;지급 정지 사유입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;1년 합쳐서는 아니고 연속해서 60일입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;출국 후 60일이 속한 달 다음달부터 입국일이 속한 달까지&lt;/p&gt;
&lt;p&gt;지급 정지 기간이며,&amp;nbsp;추후 입국을 하시게 되면 다시 받으 실 수 있습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-filename=&quot;기초연금.jpg&quot; data-origin-width=&quot;585&quot; data-origin-height=&quot;801&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6DLrg/btqzYbHFJxW/Wn67k9R3Wfir7E9fk4L0kk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6DLrg/btqzYbHFJxW/Wn67k9R3Wfir7E9fk4L0kk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6DLrg/btqzYbHFJxW/Wn67k9R3Wfir7E9fk4L0kk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6DLrg%2FbtqzYbHFJxW%2FWn67k9R3Wfir7E9fk4L0kk%2Fimg.jpg&quot; data-filename=&quot;기초연금.jpg&quot; data-origin-width=&quot;585&quot; data-origin-height=&quot;801&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>일상</category>
      <category>국외체류</category>
      <category>기초노령연금</category>
      <category>기초연금</category>
      <category>해외체류</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/81</guid>
      <comments>https://developerking.tistory.com/81#entry81comment</comments>
      <pubDate>Sat, 23 Nov 2019 22:53:00 +0900</pubDate>
    </item>
    <item>
      <title>[Python] metaclass conflict</title>
      <link>https://developerking.tistory.com/80</link>
      <description>&lt;p&gt;&lt;b&gt;장애: MainWindow에서 아래 에러 발생&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Exception has occurred: TypeError&lt;/p&gt;
&lt;p&gt;metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;원인: Ui파일 load할때 뒤에 [0] 안붙였다&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Ui_MainWindow &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; uic.loadUiType(&lt;/span&gt;&lt;span&gt;&quot;mywindow.ui&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;class&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;MainWindow&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;QMainWindow&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;Ui_MainWindow&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;해결: [0]를 붙여서 해결&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;Ui_MainWindow&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;uic.loadUiType(&lt;/span&gt;&lt;span&gt;&quot;mywindow.ui&quot;&lt;/span&gt;&lt;span&gt;)&lt;span style=&quot;color: #f41a18;&quot;&gt;&lt;b&gt;[0]&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;class&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;MainWindow&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;QMainWindow&lt;/span&gt;&lt;span&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;Ui_MainWindow&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/p&gt;</description>
      <category>Python</category>
      <category>MainWindow</category>
      <category>metaclass conflict</category>
      <category>Python</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/80</guid>
      <comments>https://developerking.tistory.com/80#entry80comment</comments>
      <pubDate>Sun, 18 Aug 2019 00:11:48 +0900</pubDate>
    </item>
    <item>
      <title>[MFC] CreateSoundBuffer Error -2147024809</title>
      <link>https://developerking.tistory.com/79</link>
      <description>&lt;p&gt;&lt;b&gt;장애: &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;긴 음성파일을 재생할때 이 에러가 발생&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;원인:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;찾아보니&amp;nbsp;&amp;nbsp;DSERR_INVALIDPARAM 인자값이 잘못 전달되었다고 함.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Buffer.dwBufferBytes 에 max제한이 있어서 DSBSIZE_MAX (dsound.h에 정의됨)&lt;/p&gt;
&lt;p&gt;이 값보다 큰 값이 들어가면 에러 발생.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;#define DSBSIZE_MIN 4&lt;/span&gt;&lt;br /&gt;&lt;span&gt;#define DSBSIZE_MAX 0xFFFFFFF&amp;nbsp; &amp;nbsp;(약 268MB)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;해결: &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;시간 계산해서 버퍼 재복사하면서 음성 이어서 재생되게끔 수정&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>MFC</category>
      <category>2147024809</category>
      <category>CreateSoundBuffer</category>
      <category>DSERR_INVALIDPARAM</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/79</guid>
      <comments>https://developerking.tistory.com/79#entry79comment</comments>
      <pubDate>Thu, 11 Jul 2019 13:12:01 +0900</pubDate>
    </item>
    <item>
      <title>[MFC] 메모리가 부족합니다</title>
      <link>https://developerking.tistory.com/78</link>
      <description>&lt;p&gt;메모리가 8GB인데도 불구하고 1GB밖에 로딩 하지 않는 현상이 일어났다.&lt;/p&gt;
&lt;p&gt;1GB이상 읽으려고하면 &quot;메모리가 부족합니다. 라는 팝업창이 뜨고&amp;nbsp;&lt;/p&gt;
&lt;p&gt;VS2010이 강제적으로 종료 되었는데, 그림에서 아래의 설정을 해주면 해결 된다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dfbI71/btqwEyyJiOF/7aVGhUTIMrU7LmpFC1p8W1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dfbI71/btqwEyyJiOF/7aVGhUTIMrU7LmpFC1p8W1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dfbI71/btqwEyyJiOF/7aVGhUTIMrU7LmpFC1p8W1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdfbI71%2FbtqwEyyJiOF%2F7aVGhUTIMrU7LmpFC1p8W1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>MFC</category>
      <category>MFC</category>
      <category>메모리 부족</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/78</guid>
      <comments>https://developerking.tistory.com/78#entry78comment</comments>
      <pubDate>Wed, 10 Jul 2019 12:06:46 +0900</pubDate>
    </item>
    <item>
      <title>인코딩/디코딩 온라인 사이트 (UTF-8, EUC-KR 포함)</title>
      <link>https://developerking.tistory.com/77</link>
      <description>&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;https://dencode.com&lt;/p&gt;</description>
      <category>Windows</category>
      <category>Decode</category>
      <category>Encode</category>
      <category>EUC-KR</category>
      <category>urldecode</category>
      <category>URLEncode</category>
      <category>UTF-8</category>
      <category>디코딩</category>
      <category>인코딩</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/77</guid>
      <comments>https://developerking.tistory.com/77#entry77comment</comments>
      <pubDate>Fri, 15 Jun 2018 11:07:53 +0900</pubDate>
    </item>
    <item>
      <title>[바이러스] XMRig CPU miner 수동제거</title>
      <link>https://developerking.tistory.com/76</link>
      <description>&lt;p&gt;특정 프로그램이 CPU를 엄청 잡아먹으면서 컴퓨터가 느려지는 현상 발생&lt;/p&gt;&lt;p&gt;작업관리자에서 제거가 안되고 계속 새로 생성된다&lt;/p&gt;&lt;p&gt;아래 그림에서 teamc.exe와 VMware.exe가 XMRig 바이러스다. 또 다른 파일들도 있고 파일명은 다를수 있다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 900px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99C24F345AFACF3A10&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99C24F345AFACF3A10&quot; width=&quot;900&quot; height=&quot;506&quot; filename=&quot;xmrig cpu miner.jpg&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;수동제거방법:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;랜선을 뽑아서 인터넷연결을 끊고 아래와 같은 작업 진행. 파일이 삭제안되면 안전모드에서 삭제.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;1. 주범은 레지스트리 아래 경로에 있는 실행파일이 컴퓨터가 시작될 때마다 quser.exe가 자동 실행됨. 이 ADSL Dial 레지스트리 항목을 삭제.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run or HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run.&amp;nbsp;&lt;/span&gt;

&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 900px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/990D503E5AFAD10B31&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F990D503E5AFAD10B31&quot; width=&quot;900&quot; height=&quot;506&quot; filename=&quot;reg_quser.jpg&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;2. C:\ProgramData폴더에 있는 exe와 bat파일들을 삭제 (보기에서 숨김파일 표시해야 됨)&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;smss.bat 편집 열어보시면 채굴관련 명령이 보임. 나오는 주소로 바이러스 배포자를 찾을수 있을가? 궁금함. 시간날때 연구해볼 생각임.&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 900px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/994AC03B5AFAD3A931&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F994AC03B5AFAD3A931&quot; width=&quot;900&quot; height=&quot;506&quot; filename=&quot;smss.bat.jpg&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;3. 윈도우 서비스에 들어가 보면 아래와 같이 가짜 서비스 Task Schoduler가 설치되어 있음. 정상서비스명은 Task Scheduler이다.&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;연결된 바이러스 파일은 C:\Windows\Logs\svchost.exe다. Task Schoduler서비스를 Stop 및 Disabled한후 이 파일을 삭제.&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;cohnost.exe 이 파일도 있으면 같이 삭제해야 됨.&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;C:\Windows\Help폴더안에도 cohnost.exe와 svchost.exe가 있으서 삭제함.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 900px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/995C533B5AFAD57F1E&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F995C533B5AFAD57F1E&quot; width=&quot;900&quot; height=&quot;506&quot; filename=&quot;task scheduler service.jpg&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;4. C:\Windows\System32폴더에 보면 win.bat, win.dat와 ftp.bat, ftp.txt 이렇게 쌍으로 있다.&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;우측클릭 편집 열어봐서 아래와 같은 내용이 있으면 둘다 삭제.&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 766px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99F3C5445AFADA431E&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99F3C5445AFADA431E&quot; width=&quot;766&quot; height=&quot;737&quot; filename=&quot;windat.jpg&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 900px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99BED84C5AFADA750C&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99BED84C5AFADA750C&quot; width=&quot;900&quot; height=&quot;506&quot; filename=&quot;ftptxt.jpg&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Windows</category>
      <category>CPU Miner</category>
      <category>cpu채굴</category>
      <category>XMRig</category>
      <category>바이러스</category>
      <category>악성프로그램</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/76</guid>
      <comments>https://developerking.tistory.com/76#entry76comment</comments>
      <pubDate>Tue, 15 May 2018 22:09:45 +0900</pubDate>
    </item>
    <item>
      <title>[C#] - 인터페이스(Interface)</title>
      <link>https://developerking.tistory.com/75</link>
      <description>&lt;div class=&quot;article&quot;&gt;&lt;div class=&quot;tt_article_useless_p_margin&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;strong style=&quot;background-color: rgb(238, 238, 238);&quot;&gt;&lt;span style=&quot;font-size: 18pt;&quot;&gt;1. 인터페이스(Interface)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;이번 강좌에서는 '인터페이스(Interface)'에 대해 알아보려고 합니다. 인터페이스라고 하니, 어디서 많이 들어보신것 같죠? 사전적 의미로는 '사용자인 인간과 컴퓨터를 연결하여 주는 장치. 키보드나 디스플레이 따위를 이른다.', '서로 다른 두 시스템, 장치, 소프트웨어 따위를 서로 이어 주는 부분. 또는 그런 접속 장치.'라는 의미를 담고 있습니다. &amp;nbsp;예를 들어, 키보드나 모니터 등을 사용하기 위해서 USB 포트에 연결시키면 컴퓨터가 이를 자동으로 인식하여 바로 사용이 가능하게끔 만들어줍니다. 그 외에도 프린터, 모뎀, 스캐너 등과 같은 주변기기를 손쉽게 연결하여 컴퓨터 내에서 바로 사용할 수 있습니다. USB 역시도 하나의 인터페이스이며, 두 장치를 이어주어 컴퓨터와 주변 기기사이에서 정보를 주고 받을수 있도록 도와줍니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;자, 이제 이런 인터페이스를 어떻게 정의하고 어떻게 사용되는지 예제를 통해 알아보도록 합시다. 우선 아래는 interface 키워드를 사용하여 인터페이스를 정의하는 예입니다.&lt;/p&gt;&lt;div&gt;&lt;div class=&quot;syntaxhighlighter  csharp ie&quot; id=&quot;highlighter_412377&quot;&gt;&lt;table border=&quot;0&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;gutter&quot;&gt;&lt;div class=&quot;line number1 index0 alt2&quot;&gt;1&lt;/div&gt;&lt;div class=&quot;line number2 index1 alt1&quot;&gt;2&lt;/div&gt;&lt;div class=&quot;line number3 index2 alt2&quot;&gt;3&lt;/div&gt;&lt;div class=&quot;line number4 index3 alt1&quot;&gt;4&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;code&quot;&gt;&lt;div class=&quot;container&quot;&gt;&lt;div class=&quot;line number1 index0 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;interface&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;인터페이스명&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number2 index1 alt1&quot;&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number3 index2 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp comments&quot;&gt;// ...&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number4 index3 alt1&quot;&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;인터페이스 내에서는 메소드, 이벤트, 인덱서, 속성이 쓰일 수 있으며, 필드를 포함할 수 없습니다. 그리고 인터페이스의 모든 멤버는 public로 접근 권한이 기본으로 지정됩니다. 대충 보아하니 클래스와 선언하는 방법이 비슷하죠? 맞습니다. 인터페이스는 말하자면 클래스의 한 종류라고도 말할 수 있습니다.&amp;nbsp;그러나&amp;nbsp;인터페이스 내에 쓰인 멤버는 구현부를 가지지 않습니다. 즉 몸통은 없이 정의되어 있어, 직접 호출할 수 없는 추상적인 멤버를 가집니다. 한가지 더 알아두셔야 할것이 있는데, 클래스의 상속에 대한 얘기를 다시한번 꺼내려고 합니다. 강좌를&amp;nbsp;거슬러 올라가서, 우리는 부모 클래스를 상속받은 자식 클래스는 여러개 존재할 수 있으나, 부모 클래스가 여러개 존재할 수 없습니다. 한마디로 말하자면 클래스는 다중 상속이 불가능하고 단일 상속만 할 수 있으나, 인터페이스 같은 경우는 다중 상속이 가능하다는 특징을 가지고 있습니다. 한번 지금까지 말한 인터페이스의 특징을 간략하게 정리해봅시다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: rgb(107, 102, 255);&quot;&gt;●&lt;/span&gt;&amp;nbsp;인터페이스 내에서는 메소드, 이벤트, 인덱서, 속성을 쓸 수 있습니다.&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: rgb(107, 102, 255);&quot;&gt;●&lt;/span&gt;&amp;nbsp;인터페이스에서는 필드를 포함할 수 없습니다.&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: rgb(107, 102, 255);&quot;&gt;●&lt;/span&gt;&amp;nbsp;모든 멤버는 public로 접근 권한이 기본으로 지정됩니다.&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: rgb(107, 102, 255);&quot;&gt;●&lt;/span&gt;&amp;nbsp;몸통이 정의되어 있지 않은 추상적인 멤버를 가집니다.&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: rgb(107, 102, 255);&quot;&gt;●&lt;/span&gt;&amp;nbsp;인터페이스는 다른 인터페이스를 상속하거나, 클래스에서 인터페이스 하나를 여러 차례 상속할 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;이제는 한번, 인터페이스를 직접 사용하여 보도록 합시다. 아래는 인터페이스에 관한 예제입니다.&lt;/p&gt;&lt;div&gt;&lt;div class=&quot;syntaxhighlighter  csharp ie&quot; id=&quot;highlighter_887077&quot;&gt;&lt;table border=&quot;0&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;gutter&quot;&gt;&lt;div class=&quot;line number1 index0 alt2&quot;&gt;1&lt;/div&gt;&lt;div class=&quot;line number2 index1 alt1&quot;&gt;2&lt;/div&gt;&lt;div class=&quot;line number3 index2 alt2&quot;&gt;3&lt;/div&gt;&lt;div class=&quot;line number4 index3 alt1&quot;&gt;4&lt;/div&gt;&lt;div class=&quot;line number5 index4 alt2&quot;&gt;5&lt;/div&gt;&lt;div class=&quot;line number6 index5 alt1&quot;&gt;6&lt;/div&gt;&lt;div class=&quot;line number7 index6 alt2&quot;&gt;7&lt;/div&gt;&lt;div class=&quot;line number8 index7 alt1&quot;&gt;8&lt;/div&gt;&lt;div class=&quot;line number9 index8 alt2&quot;&gt;9&lt;/div&gt;&lt;div class=&quot;line number10 index9 alt1&quot;&gt;10&lt;/div&gt;&lt;div class=&quot;line number11 index10 alt2&quot;&gt;11&lt;/div&gt;&lt;div class=&quot;line number12 index11 alt1&quot;&gt;12&lt;/div&gt;&lt;div class=&quot;line number13 index12 alt2&quot;&gt;13&lt;/div&gt;&lt;div class=&quot;line number14 index13 alt1&quot;&gt;14&lt;/div&gt;&lt;div class=&quot;line number15 index14 alt2&quot;&gt;15&lt;/div&gt;&lt;div class=&quot;line number16 index15 alt1&quot;&gt;16&lt;/div&gt;&lt;div class=&quot;line number17 index16 alt2&quot;&gt;17&lt;/div&gt;&lt;div class=&quot;line number18 index17 alt1&quot;&gt;18&lt;/div&gt;&lt;div class=&quot;line number19 index18 alt2&quot;&gt;19&lt;/div&gt;&lt;div class=&quot;line number20 index19 alt1&quot;&gt;20&lt;/div&gt;&lt;div class=&quot;line number21 index20 alt2&quot;&gt;21&lt;/div&gt;&lt;div class=&quot;line number22 index21 alt1&quot;&gt;22&lt;/div&gt;&lt;div class=&quot;line number23 index22 alt2&quot;&gt;23&lt;/div&gt;&lt;div class=&quot;line number24 index23 alt1&quot;&gt;24&lt;/div&gt;&lt;div class=&quot;line number25 index24 alt2&quot;&gt;25&lt;/div&gt;&lt;div class=&quot;line number26 index25 alt1&quot;&gt;26&lt;/div&gt;&lt;div class=&quot;line number27 index26 alt2&quot;&gt;27&lt;/div&gt;&lt;div class=&quot;line number28 index27 alt1&quot;&gt;28&lt;/div&gt;&lt;div class=&quot;line number29 index28 alt2&quot;&gt;29&lt;/div&gt;&lt;div class=&quot;line number30 index29 alt1&quot;&gt;30&lt;/div&gt;&lt;div class=&quot;line number31 index30 alt2&quot;&gt;31&lt;/div&gt;&lt;div class=&quot;line number32 index31 alt1&quot;&gt;32&lt;/div&gt;&lt;div class=&quot;line number33 index32 alt2&quot;&gt;33&lt;/div&gt;&lt;div class=&quot;line number34 index33 alt1&quot;&gt;34&lt;/div&gt;&lt;div class=&quot;line number35 index34 alt2&quot;&gt;35&lt;/div&gt;&lt;div class=&quot;line number36 index35 alt1&quot;&gt;36&lt;/div&gt;&lt;div class=&quot;line number37 index36 alt2&quot;&gt;37&lt;/div&gt;&lt;div class=&quot;line number38 index37 alt1&quot;&gt;38&lt;/div&gt;&lt;div class=&quot;line number39 index38 alt2&quot;&gt;39&lt;/div&gt;&lt;div class=&quot;line number40 index39 alt1&quot;&gt;40&lt;/div&gt;&lt;div class=&quot;line number41 index40 alt2&quot;&gt;41&lt;/div&gt;&lt;div class=&quot;line number42 index41 alt1&quot;&gt;42&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;code&quot;&gt;&lt;div class=&quot;container&quot;&gt;&lt;div class=&quot;line number1 index0 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number2 index1 alt1&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System.Collections.Generic;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number3 index2 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System.Linq;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number4 index3 alt1&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System.Text;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number5 index4 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System.Threading.Tasks;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number6 index5 alt1&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number7 index6 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;namespace&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;ConsoleApplication32&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number8 index7 alt1&quot;&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number9 index8 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;interface&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;IMyInterfaceA&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number10 index9 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number11 index10 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;print();&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number12 index11 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number13 index12 alt2&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number14 index13 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;interface&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;IMyInterfaceB&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number15 index14 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number16 index15 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;print();&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number17 index16 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number18 index17 alt1&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number19 index18 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;class&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;MyClass : IMyInterfaceA, IMyInterfaceB&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number20 index19 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number21 index20 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;static&lt;/code&gt; &lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;Main(&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;string&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;[] args)&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number22 index21 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number23 index22 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;MyClass mc = &lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;MyClass();&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number24 index23 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number25 index24 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;IMyInterfaceA imca = mc;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number26 index25 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;imca.print();&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number27 index26 alt2&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number28 index27 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;IMyInterfaceB imcb = mc;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number29 index28 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;imcb.print();&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number30 index29 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number31 index30 alt2&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number32 index31 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;IMyInterfaceA.print()&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number33 index32 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number34 index33 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;Console.WriteLine(&lt;/code&gt;&lt;code class=&quot;csharp string&quot;&gt;&quot;IMyInterfaceA.print() 호출.&quot;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;);&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number35 index34 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number36 index35 alt1&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number37 index36 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;IMyInterfaceB.print()&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number38 index37 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number39 index38 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;Console.WriteLine(&lt;/code&gt;&lt;code class=&quot;csharp string&quot;&gt;&quot;IMyInterfaceB.print() 호출.&quot;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;);&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number40 index39 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number41 index40 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number42 index41 alt1&quot;&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;b&gt;결과:&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;padding: 10px; border: 1px solid rgb(243, 197, 52); border-image: none; background-color: rgb(254, 254, 184);&quot;&gt;&lt;p&gt;IMyInterfaceA.print() 호출.&lt;/p&gt;&lt;p&gt;IMyInterfaceB.print() 호출.&lt;/p&gt;&lt;p&gt;계속하려면 아무 키나 누르십시오 . . .&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;코드를 보시면, 9~11행과 14~17행에 각각 IMyInterfaceA, IMyInterfaceB라는 인터페이스가 정의되었습니다. 둘다 print란 멤버 함수가 존재합니다. 그리고 19행을 보시면 IMyInterfaceA와 IMyInterfaceB를 상속하고 있습니다. 그 다음에 25~29행을 보시면 인터페이스의 인스턴스를 통해 액세스 할 수 있음을 확인할 수 있습니다. 눈에 띄는건 동일한 함수를 구현하고자 할 때, 함수명 앞에 해당 인터페이스명을 명시하여 구현하고 있죠. 만약에 인터페이스명 없이 함수만 쓰였다면 어느것이 어떤 인터페이스의 메소드인지 구분할 수 없기 때문에 에러가 출력됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;padding: 10px; border: 1px solid rgb(193, 193, 193); border-image: none; background-color: rgb(238, 238, 238);&quot;&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;span style=&quot;font-size: 18pt;&quot;&gt;2.&lt;/span&gt; 인터페이스는 인터페이스를 상속하고&lt;span style=&quot;font-size: 14pt;&quot;&gt;(Interface inherits interface)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;앞에서 인터페이스의 특징을 설명하다보니 상속이란 말이 나오게 되었는데, 우리가 지금까지 알고있는건 클래스의 상속 뿐이었습니다. 클래스가 클래스를 상속할 수 있듯이, 인터페이스가 인터페이스를 상속할 수 있습니다. 형식은 클래스의 상속과 다르지 않습니다.&lt;/p&gt;&lt;div&gt;&lt;div class=&quot;syntaxhighlighter  csharp ie&quot; id=&quot;highlighter_942926&quot;&gt;&lt;table border=&quot;0&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;gutter&quot;&gt;&lt;div class=&quot;line number1 index0 alt2&quot;&gt;1&lt;/div&gt;&lt;div class=&quot;line number2 index1 alt1&quot;&gt;2&lt;/div&gt;&lt;div class=&quot;line number3 index2 alt2&quot;&gt;3&lt;/div&gt;&lt;div class=&quot;line number4 index3 alt1&quot;&gt;4&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;code&quot;&gt;&lt;div class=&quot;container&quot;&gt;&lt;div class=&quot;line number1 index0 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;interface&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;자식인터페이스명 : 부모인터페이스명&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number2 index1 alt1&quot;&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number3 index2 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp comments&quot;&gt;// ...&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number4 index3 alt1&quot;&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;아래 예제에서는&amp;nbsp;인터페이스를 인터페이스에 상속하고 다시 이 인터페이스를 클래스로 상속했습니다.&lt;/p&gt;&lt;div&gt;&lt;div class=&quot;syntaxhighlighter  csharp ie&quot; id=&quot;highlighter_129854&quot;&gt;&lt;table border=&quot;0&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;gutter&quot;&gt;&lt;div class=&quot;line number1 index0 alt2&quot;&gt;1&lt;/div&gt;&lt;div class=&quot;line number2 index1 alt1&quot;&gt;2&lt;/div&gt;&lt;div class=&quot;line number3 index2 alt2&quot;&gt;3&lt;/div&gt;&lt;div class=&quot;line number4 index3 alt1&quot;&gt;4&lt;/div&gt;&lt;div class=&quot;line number5 index4 alt2&quot;&gt;5&lt;/div&gt;&lt;div class=&quot;line number6 index5 alt1&quot;&gt;6&lt;/div&gt;&lt;div class=&quot;line number7 index6 alt2&quot;&gt;7&lt;/div&gt;&lt;div class=&quot;line number8 index7 alt1&quot;&gt;8&lt;/div&gt;&lt;div class=&quot;line number9 index8 alt2&quot;&gt;9&lt;/div&gt;&lt;div class=&quot;line number10 index9 alt1&quot;&gt;10&lt;/div&gt;&lt;div class=&quot;line number11 index10 alt2&quot;&gt;11&lt;/div&gt;&lt;div class=&quot;line number12 index11 alt1&quot;&gt;12&lt;/div&gt;&lt;div class=&quot;line number13 index12 alt2&quot;&gt;13&lt;/div&gt;&lt;div class=&quot;line number14 index13 alt1&quot;&gt;14&lt;/div&gt;&lt;div class=&quot;line number15 index14 alt2&quot;&gt;15&lt;/div&gt;&lt;div class=&quot;line number16 index15 alt1&quot;&gt;16&lt;/div&gt;&lt;div class=&quot;line number17 index16 alt2&quot;&gt;17&lt;/div&gt;&lt;div class=&quot;line number18 index17 alt1&quot;&gt;18&lt;/div&gt;&lt;div class=&quot;line number19 index18 alt2&quot;&gt;19&lt;/div&gt;&lt;div class=&quot;line number20 index19 alt1&quot;&gt;20&lt;/div&gt;&lt;div class=&quot;line number21 index20 alt2&quot;&gt;21&lt;/div&gt;&lt;div class=&quot;line number22 index21 alt1&quot;&gt;22&lt;/div&gt;&lt;div class=&quot;line number23 index22 alt2&quot;&gt;23&lt;/div&gt;&lt;div class=&quot;line number24 index23 alt1&quot;&gt;24&lt;/div&gt;&lt;div class=&quot;line number25 index24 alt2&quot;&gt;25&lt;/div&gt;&lt;div class=&quot;line number26 index25 alt1&quot;&gt;26&lt;/div&gt;&lt;div class=&quot;line number27 index26 alt2&quot;&gt;27&lt;/div&gt;&lt;div class=&quot;line number28 index27 alt1&quot;&gt;28&lt;/div&gt;&lt;div class=&quot;line number29 index28 alt2&quot;&gt;29&lt;/div&gt;&lt;div class=&quot;line number30 index29 alt1&quot;&gt;30&lt;/div&gt;&lt;div class=&quot;line number31 index30 alt2&quot;&gt;31&lt;/div&gt;&lt;div class=&quot;line number32 index31 alt1&quot;&gt;32&lt;/div&gt;&lt;div class=&quot;line number33 index32 alt2&quot;&gt;33&lt;/div&gt;&lt;div class=&quot;line number34 index33 alt1&quot;&gt;34&lt;/div&gt;&lt;div class=&quot;line number35 index34 alt2&quot;&gt;35&lt;/div&gt;&lt;div class=&quot;line number36 index35 alt1&quot;&gt;36&lt;/div&gt;&lt;div class=&quot;line number37 index36 alt2&quot;&gt;37&lt;/div&gt;&lt;div class=&quot;line number38 index37 alt1&quot;&gt;38&lt;/div&gt;&lt;div class=&quot;line number39 index38 alt2&quot;&gt;39&lt;/div&gt;&lt;div class=&quot;line number40 index39 alt1&quot;&gt;40&lt;/div&gt;&lt;div class=&quot;line number41 index40 alt2&quot;&gt;41&lt;/div&gt;&lt;div class=&quot;line number42 index41 alt1&quot;&gt;42&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;code&quot;&gt;&lt;div class=&quot;container&quot;&gt;&lt;div class=&quot;line number1 index0 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number2 index1 alt1&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System.Collections.Generic;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number3 index2 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System.Linq;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number4 index3 alt1&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System.Text;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number5 index4 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;using&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;System.Threading.Tasks;&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number6 index5 alt1&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number7 index6 alt2&quot;&gt;&lt;code class=&quot;csharp keyword&quot;&gt;namespace&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;ConsoleApplication32&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number8 index7 alt1&quot;&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number9 index8 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;interface&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;ParentInterface{&amp;nbsp; &lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number10 index9 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;myMethod(&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;string&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;str);&amp;nbsp; &lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number11 index10 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&amp;nbsp; &lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number12 index11 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number13 index12 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;interface&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;SubInterface : ParentInterface{&amp;nbsp; &lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number14 index13 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;myMethod(&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;string&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;str, &lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;int&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;i);&amp;nbsp; &lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number15 index14 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number16 index15 alt1&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number17 index16 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;class&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;MyClass : SubInterface&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number18 index17 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number19 index18 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;public&lt;/code&gt; &lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;myMethod(&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;string&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;str)&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number20 index19 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number21 index20 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;Console.WriteLine(str + &lt;/code&gt;&lt;code class=&quot;csharp string&quot;&gt;&quot; ParentInterface.myMethod() call!&quot;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;);&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number22 index21 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number23 index22 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;public&lt;/code&gt; &lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;myMethod(&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;string&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;str, &lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;int&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;count)&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number24 index23 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number25 index24 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;for&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;(&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;int&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;i = 0; i &amp;lt; count; i++)&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number26 index25 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number27 index26 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;Console.WriteLine(str + &lt;/code&gt;&lt;code class=&quot;csharp string&quot;&gt;&quot; SubInterface.myMethod() &quot;&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;+ i + &lt;/code&gt;&lt;code class=&quot;csharp string&quot;&gt;&quot; call!&quot;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;);&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number28 index27 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number29 index28 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number30 index29 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number31 index30 alt2&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number32 index31 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;class&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;Program&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number33 index32 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number34 index33 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;static&lt;/code&gt; &lt;code class=&quot;csharp keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;Main(&lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;string&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;[] args)&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number35 index34 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;{&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number36 index35 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;MyClass sif = &lt;/code&gt;&lt;code class=&quot;csharp keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;csharp plain&quot;&gt;MyClass();&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number37 index36 alt2&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;line number38 index37 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;sif.myMethod(&lt;/code&gt;&lt;code class=&quot;csharp string&quot;&gt;&quot;Interface&quot;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;);&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number39 index38 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;sif.myMethod(&lt;/code&gt;&lt;code class=&quot;csharp string&quot;&gt;&quot;Inherits&quot;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;, 4);&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number40 index39 alt1&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number41 index40 alt2&quot;&gt;&lt;code class=&quot;csharp spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;div class=&quot;line number42 index41 alt1&quot;&gt;&lt;code class=&quot;csharp plain&quot;&gt;}&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;b&gt;결과:&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;padding: 10px; border: 1px solid rgb(243, 197, 52); border-image: none; background-color: rgb(254, 254, 184);&quot;&gt;&lt;p&gt;Interface ParentInterface.myMethod() call!&lt;/p&gt;&lt;p&gt;Inherits SubInterface.myMethod() 0 call!&lt;/p&gt;&lt;p&gt;Inherits SubInterface.myMethod() 1 call!&lt;/p&gt;&lt;p&gt;Inherits SubInterface.myMethod() 2 call!&lt;/p&gt;&lt;p&gt;Inherits SubInterface.myMethod() 3 call!&lt;/p&gt;&lt;p&gt;계속하려면 아무 키나 누르십시오 . . .&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;코드를 보시면 9~11행과 13~15행을 보시면 ParentInterface와 SubInterface가 정의되었고, 인터페이스 ParentInterface를 인터페이스 SubInterface에 상속시켰습니다. 그리고 17행을 보시면 이 SubInterface를 MyClass에 상속시켰습니다. 참고로 이제는 ParentInterface의 myMethod, SubInterface에 myMethod를 모두 물려받은 셈이 되겠습니다. 하지만 이것은 몸통이 없는 추상 멤버이므로 모두 빠짐없이 정의해 주어야 합니다. 꼭 기억하세요.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;출처: &lt;a href=&quot;http://blog.eairship.kr/148&quot;&gt;http://blog.eairship.kr/148&lt;/a&gt; [누구나가 다 이해할 수 있는 프로그래밍 첫걸음]&lt;/p&gt;</description>
      <category>C#</category>
      <category>Interface</category>
      <category>인터페이스</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/75</guid>
      <comments>https://developerking.tistory.com/75#entry75comment</comments>
      <pubDate>Fri, 21 Jul 2017 16:01:08 +0900</pubDate>
    </item>
    <item>
      <title>[C#] 클래스 상속/파생/추상</title>
      <link>https://developerking.tistory.com/74</link>
      <description>&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style=&quot;font-family: &amp;quot;Open Sans&amp;quot;, GulimChe; font-size: 14px; letter-spacing: 1px;&quot;&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s1_TitleDiv&quot;&gt;&lt;span id=&quot;MainPlaceHolder_MainBar_MainContent_s1_lblTitle&quot; class=&quot;cTitle&quot; style=&quot;font-family: Gulim, 굴림; font-size: 16px; font-weight: bold; color: rgb(153, 51, 0); text-decoration: underline;&quot;&gt;C# 클래스 상속&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s1_DescDiv&quot; class=&quot;section_desc&quot; style=&quot;font-size: 15.4px; width: 760px;&quot;&gt;&lt;span id=&quot;MainPlaceHolder_MainBar_MainContent_s1_lblText&quot;&gt;C#에서 일종의 부모 클래스인 베이스&amp;nbsp;&lt;a target=&quot;_blank&quot; href=&quot;http://www.csharpstudy.com/CSharp/CSharp-class.aspx&quot; style=&quot;font-weight: bold; color: rgb(153, 51, 0); text-decoration: underline;&quot;&gt;클래스&lt;/a&gt;(base class)로부터 상속하여 새로운 파생 클래스(derived class)를 만들 수 있다. 상속(inheritance)을 사용하게 되면 베이스 클래스의 데이타 및 메서드들을 (public 혹은 protected 멤버의 경우) 파생클래스에서 사용할 수 있게 된다. 파생 클래스는 베이스 클래스로부터 물려 받는 멤버들 외에 대개 새로운 메서드 및 데이타를 추가해서 사용하게 된다.&lt;br /&gt;&lt;br /&gt;C#에서는 파생 클래스명 뒤에 Colon (:)을 찍고 베이스 클래스명을 써 주면 상속이 이루어 진다. 제약점은 C#에서는 파생클래스가 단 하나의 베이스 클래스로부터 상속되어져야 한다는 것이다. 즉, 하나의 파생클래스는 2개 이상의 베이스 클래스를 가질 수 없다. 아래 예는 파생클래스가 베이스 클래스의 속성(Property)을 사용하는 예이다.&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;example&quot; style=&quot;background-color: rgb(229, 238, 255); margin: 0px; padding: 10px; border: 1px solid rgb(212, 212, 212); background-repeat: repeat-x; width: 700px; clear: both;&quot;&gt;&lt;h2 class=&quot;example-title&quot; style=&quot;color: rgb(0, 102, 0);&quot;&gt;예제&lt;/h2&gt;&lt;div&gt;&lt;div class=&quot;sunlight-container&quot; style=&quot;clear: both !important; position: relative !important; margin: 10px 0px !important; font-family: Consolas, Inconsolata, Monaco, &amp;quot;Courier New&amp;quot; !important; font-size: 12px !important; line-height: 15px !important;&quot;&gt;&lt;div class=&quot;sunlight-code-container&quot; style=&quot;border-width: initial; border-style: none; border-image: initial; clear: both !important; position: relative !important; border-color: rgb(150, 150, 150) !important; background-color: rgb(255, 255, 255) !important;&quot;&gt;&lt;pre class=&quot;sunlight-highlight-csharp example-codebox sunlight-highlighted&quot; style=&quot;background-color: rgb(255, 255, 255); padding: 4px; border: 1px solid rgb(212, 212, 212); width: 690px; overflow-x: auto; overflow-y: hidden; z-index: 1; position: relative; font-family: Consolas, Inconsolata, Monaco, &amp;quot;Courier New&amp;quot; !important; line-height: 15px !important; margin-top: 0px !important; margin-bottom: 0px !important;&quot;&gt;&lt;span class=&quot;sunlight-csharp&quot; style=&quot;background: transparent;&quot;&gt;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;베이스&amp;nbsp;클래스&lt;/span&gt;
&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;Animal&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;string&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Name&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;set&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Age&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;set&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;

&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;파생클래스&lt;/span&gt;
&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;Dog&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;:&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;Animal&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;void&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;HowOld&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;베이스&amp;nbsp;클래스의&amp;nbsp;Age&amp;nbsp;속성&amp;nbsp;사용&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Console&lt;/span&gt;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;WriteLine&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-string&quot; style=&quot;background: transparent; color: rgb(153, 0, 0) !important;&quot;&gt;&quot;나이:&amp;nbsp;{0}&quot;&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;,&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Age&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;

&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;Bird&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;:&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;Animal&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;void&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Fly&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Console&lt;/span&gt;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;WriteLine&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-string&quot; style=&quot;background: transparent; color: rgb(153, 0, 0) !important;&quot;&gt;&quot;{0}가&amp;nbsp;날다&quot;&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;,&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Name&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style=&quot;font-family: &amp;quot;Open Sans&amp;quot;, GulimChe; font-size: 14px; letter-spacing: 1px;&quot;&gt;&lt;div style=&quot;font-family: &amp;quot;Open Sans&amp;quot;, GulimChe; font-size: 14px; letter-spacing: 1px;&quot;&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s2_TitleDiv&quot;&gt;&lt;span id=&quot;MainPlaceHolder_MainBar_MainContent_s2_lblTitle&quot; class=&quot;cTitle&quot; style=&quot;font-family: Gulim, 굴림; font-size: 16px; font-weight: bold; color: rgb(153, 51, 0); text-decoration: underline;&quot;&gt;추상 클래스 (Abstract Class)&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s2_DescDiv&quot; class=&quot;section_desc&quot; style=&quot;font-size: 15.4px; width: 760px;&quot;&gt;&lt;span id=&quot;MainPlaceHolder_MainBar_MainContent_s2_lblText&quot;&gt;C#의 클래스명 앞에&amp;nbsp;&lt;b&gt;abstract&lt;/b&gt;라는 C# 키워드 붙이는 경우가 있다.&amp;nbsp;&lt;b&gt;&lt;font color=&quot;#993300&quot;&gt;이를 추상 클래스라고 하는데, 이러한 종류의 클래스로부터는 객체를 직접 생성할 수 없다.&lt;/font&gt;&lt;/b&gt;&amp;nbsp;즉, new를 이용하여 클래스 객체를 생성할 수 없다.&lt;br /&gt;&lt;br /&gt;또한 추상 클래스안에 어떤 멤버 앞에 abstract 키워드를 붙이는 경우가 있는데, 이는 해당 멤버가 구현되지 않았으며, 추상 클래스로부터 파생되는 파생클래스에서 반드시 그 멤버를 구현해 주어야 한다는 것을 의미한다. 파생 클래스에서는 abstract 메서드를 구현하기 위해서는 override 라는 C# 키워드를 사용하여 그 메서드를 새로 정의한다.&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;example&quot; style=&quot;background-color: rgb(229, 238, 255); margin: 0px; padding: 10px; border: 1px solid rgb(212, 212, 212); background-repeat: repeat-x; width: 700px; clear: both;&quot;&gt;&lt;h2 class=&quot;example-title&quot; style=&quot;color: rgb(0, 102, 0);&quot;&gt;예제&lt;/h2&gt;&lt;div&gt;&lt;div class=&quot;sunlight-container&quot; style=&quot;clear: both !important; position: relative !important; margin: 10px 0px !important; font-family: Consolas, Inconsolata, Monaco, &amp;quot;Courier New&amp;quot; !important; font-size: 12px !important; line-height: 15px !important;&quot;&gt;&lt;div class=&quot;sunlight-code-container&quot; style=&quot;border-width: initial; border-style: none; border-image: initial; clear: both !important; position: relative !important; border-color: rgb(150, 150, 150) !important; background-color: rgb(255, 255, 255) !important;&quot;&gt;&lt;pre class=&quot;sunlight-highlight-csharp example-codebox sunlight-highlighted&quot; style=&quot;background-color: rgb(255, 255, 255); padding: 4px; border: 1px solid rgb(212, 212, 212); width: 690px; overflow-x: auto; overflow-y: hidden; z-index: 1; position: relative; font-family: Consolas, Inconsolata, Monaco, &amp;quot;Courier New&amp;quot; !important; line-height: 15px !important; margin-top: 0px !important; margin-bottom: 0px !important;&quot;&gt;&lt;span class=&quot;sunlight-csharp&quot; style=&quot;background: transparent;&quot;&gt;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;abstract&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;PureBase&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;abstract&amp;nbsp;C#키워드&amp;nbsp;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;abstract&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;GetFirst&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;abstract&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;GetNext&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;

&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;DerivedA&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;:&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;PureBase&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;private&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;no&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-number&quot; style=&quot;background: transparent; color: rgb(204, 102, 0) !important;&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;override&amp;nbsp;C#키워드&amp;nbsp;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;override&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;GetFirst&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;return&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;no&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;override&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;GetNext&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;return&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;no&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s2_VideoDiv&quot;&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr style=&quot;font-family: &amp;quot;Open Sans&amp;quot;, GulimChe; font-size: 14px; letter-spacing: 1px;&quot;&gt;&lt;div style=&quot;font-family: &amp;quot;Open Sans&amp;quot;, GulimChe; font-size: 14px; letter-spacing: 1px;&quot;&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s3_TitleDiv&quot;&gt;&lt;span id=&quot;MainPlaceHolder_MainBar_MainContent_s3_lblTitle&quot; class=&quot;cTitle&quot; style=&quot;font-family: Gulim, 굴림; font-size: 16px; font-weight: bold; color: rgb(153, 51, 0); text-decoration: underline;&quot;&gt;public / protected 멤버&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s3_DescDiv&quot; class=&quot;section_desc&quot; style=&quot;font-size: 15.4px; width: 760px;&quot;&gt;&lt;span id=&quot;MainPlaceHolder_MainBar_MainContent_s3_lblText&quot;&gt;C#의 클래스 멤버 중 public으로 선언된 멤버들은 (파생클래스 포함한) 모든 외부 클래스에서 엑세스 할 수 있다. 만약 모든 클래스에서 사용되지 않게 하고 단지 파생클래스에서만 사용하게 하고 싶다면, protected 라는&amp;nbsp;&lt;a target=&quot;_blank&quot; href=&quot;http://www.csharpstudy.com/CSharp/CSharp-access-modifier.aspx&quot; style=&quot;font-weight: bold; color: rgb(153, 51, 0); text-decoration: underline;&quot;&gt;접근제한자(Access Modifier)&lt;/a&gt;를 사용한다.&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;example&quot; style=&quot;background-color: rgb(229, 238, 255); margin: 0px; padding: 10px; border: 1px solid rgb(212, 212, 212); background-repeat: repeat-x; width: 700px; clear: both;&quot;&gt;&lt;h2 class=&quot;example-title&quot; style=&quot;color: rgb(0, 102, 0);&quot;&gt;예제&lt;/h2&gt;&lt;div&gt;&lt;div class=&quot;sunlight-container&quot; style=&quot;clear: both !important; position: relative !important; margin: 10px 0px !important; font-family: Consolas, Inconsolata, Monaco, &amp;quot;Courier New&amp;quot; !important; font-size: 12px !important; line-height: 15px !important;&quot;&gt;&lt;div class=&quot;sunlight-code-container&quot; style=&quot;border-width: initial; border-style: none; border-image: initial; clear: both !important; position: relative !important; border-color: rgb(150, 150, 150) !important; background-color: rgb(255, 255, 255) !important;&quot;&gt;&lt;pre class=&quot;sunlight-highlight-csharp example-codebox sunlight-highlighted&quot; style=&quot;background-color: rgb(255, 255, 255); padding: 4px; border: 1px solid rgb(212, 212, 212); width: 690px; overflow-x: auto; overflow-y: hidden; z-index: 1; position: relative; font-family: Consolas, Inconsolata, Monaco, &amp;quot;Courier New&amp;quot; !important; line-height: 15px !important; margin-top: 0px !important; margin-bottom: 0px !important;&quot;&gt;&lt;span class=&quot;sunlight-csharp&quot; style=&quot;background: transparent;&quot;&gt;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;string&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Name&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;set&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;protected&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Age&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;set&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;

&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyDerived&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;:&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;void&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Run&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;파생클래스이므로&amp;nbsp;Age&amp;nbsp;사용&amp;nbsp;가능&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Console&lt;/span&gt;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;WriteLine&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-string&quot; style=&quot;background: transparent; color: rgb(153, 0, 0) !important;&quot;&gt;&quot;나이:&amp;nbsp;{0}&quot;&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;,&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Age&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style=&quot;font-family: &amp;quot;Open Sans&amp;quot;, GulimChe; font-size: 14px; letter-spacing: 1px;&quot;&gt;&lt;div style=&quot;font-family: &amp;quot;Open Sans&amp;quot;, GulimChe; font-size: 14px; letter-spacing: 1px;&quot;&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s4_TitleDiv&quot;&gt;&lt;span id=&quot;MainPlaceHolder_MainBar_MainContent_s4_lblTitle&quot; class=&quot;cTitle&quot; style=&quot;font-family: Gulim, 굴림; font-size: 16px; font-weight: bold; color: rgb(153, 51, 0); text-decoration: underline;&quot;&gt;as 연산자와 is 연산자&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div id=&quot;MainPlaceHolder_MainBar_MainContent_s4_DescDiv&quot; class=&quot;section_desc&quot; style=&quot;font-size: 15.4px; width: 760px;&quot;&gt;&lt;span id=&quot;MainPlaceHolder_MainBar_MainContent_s4_lblText&quot;&gt;&lt;b&gt;C#의 as 연산자는 객체를 지정된 클래스 타입으로 변환하는데 사용된다. 만약 변환이 성공하면 해당 클래스 타입으로 캐스팅하고, 변환이 실패하면 null 을 리턴한다.&lt;/b&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;이와는 대조적으로 암묵적 캐스팅(Implicit Casting)은 만약 변환이 실패하면 Exception을 발생시키게 되는데, 이를 catch하지 않은 경우 프로그램을 중지시키게 된다.&lt;br /&gt;&lt;br /&gt;C#의 is 연산자는 is 앞에 있는 객체가 특정 클래스 타입이나 인터페이스를 갖고 있는지 확인하는데 사용된다.&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;example&quot; style=&quot;background-color: rgb(229, 238, 255); margin: 0px; padding: 10px; border: 1px solid rgb(212, 212, 212); background-repeat: repeat-x; width: 700px; clear: both;&quot;&gt;&lt;h2 class=&quot;example-title&quot; style=&quot;color: rgb(0, 102, 0);&quot;&gt;예제&lt;/h2&gt;&lt;div&gt;&lt;div class=&quot;sunlight-container&quot; style=&quot;clear: both !important; position: relative !important; margin: 10px 0px !important; font-family: Consolas, Inconsolata, Monaco, &amp;quot;Courier New&amp;quot; !important; font-size: 12px !important; line-height: 15px !important;&quot;&gt;&lt;div class=&quot;sunlight-code-container&quot; style=&quot;border-width: initial; border-style: none; border-image: initial; clear: both !important; position: relative !important; border-color: rgb(150, 150, 150) !important; background-color: rgb(255, 255, 255) !important;&quot;&gt;&lt;pre class=&quot;sunlight-highlight-csharp example-codebox sunlight-highlighted&quot; style=&quot;background-color: rgb(255, 255, 255); padding: 4px; border: 1px solid rgb(212, 212, 212); width: 690px; overflow-x: auto; overflow-y: hidden; z-index: 1; position: relative; font-family: Consolas, Inconsolata, Monaco, &amp;quot;Courier New&amp;quot; !important; line-height: 15px !important; margin-top: 0px !important; margin-bottom: 0px !important;&quot;&gt;&lt;span class=&quot;sunlight-csharp&quot; style=&quot;background: transparent;&quot;&gt;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyClass&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;:&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;

&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;Program&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;static&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;void&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Main&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;]&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;args&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyClass&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;c&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyClass&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;Program&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Test&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;void&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;Test&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;object&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;obj&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;{&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;as&amp;nbsp;연산자&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;a&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;obj&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;as&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;is&amp;nbsp;연산자&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;bool&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;ok&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;obj&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-keyword&quot; style=&quot;background: transparent; color: rgb(0, 0, 255) !important;&quot;&gt;is&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//true&lt;/span&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-comment&quot; style=&quot;background: transparent; color: rgb(0, 153, 0) !important;&quot;&gt;//&amp;nbsp;암묵적&amp;nbsp;캐스팅(Implicit&amp;nbsp;Casting)&lt;/span&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;b&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-operator&quot; style=&quot;background: transparent;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;sunlight-named-ident&quot; style=&quot;background: transparent; color: rgb(43, 145, 175) !important;&quot;&gt;MyBase&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;)&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;sunlight-ident&quot; style=&quot;background: transparent;&quot;&gt;obj&lt;/span&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;;&lt;/span&gt;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;div&gt;&lt;span class=&quot;sunlight-csharp&quot; style=&quot;background: transparent;&quot;&gt;&lt;span class=&quot;sunlight-punctuation&quot; style=&quot;background: transparent;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>C#</category>
      <category>상속</category>
      <category>추상</category>
      <category>파생</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/74</guid>
      <comments>https://developerking.tistory.com/74#entry74comment</comments>
      <pubDate>Wed, 19 Jul 2017 16:32:09 +0900</pubDate>
    </item>
    <item>
      <title>[C#] 시간체크(Stopwatch)</title>
      <link>https://developerking.tistory.com/73</link>
      <description>&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre class=&quot;brush:csharp&quot; style=&quot;margin: 28px auto; padding: 16px; outline: none; background-color: rgb(246, 247, 248); word-wrap: break-word; font-family: Menlo, Consolas, Monaco, monospace; font-size: 14px; line-height: 20px; color: rgb(102, 102, 102);&quot;&gt;using System.Diagnostics;
 
Stopwatch SW = new Stopwatch();
string sTemp1, sTemp2;

SW.Reset();
SW.Start();

// &quot; 측정할 부분 작성 &quot;
SW.Stop();

// 현재 인스턴스가 측정한 총 경과 시간을 가져옵니다.
sTemp1 = SW.Elapsed.ToString();                             // EX) &quot;00:00:00.0000045&quot;
// 현재 인스턴스가 측정한 밀리초 단위의 총 경과 시간을 가져옵니다
sTemp2 = SW.ElapsedMilliseconds.ToString() ;          // EX) &quot;44&quot;&lt;/pre&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>C#</category>
      <category>Stopwatch</category>
      <author>평생업</author>
      <guid isPermaLink="true">https://developerking.tistory.com/73</guid>
      <comments>https://developerking.tistory.com/73#entry73comment</comments>
      <pubDate>Tue, 18 Jul 2017 10:41:00 +0900</pubDate>
    </item>
  </channel>
</rss>