C#에서는 인터페이스를 만들 수 있으며 인터페이스를 사용할 때 컴파일러는 특정 인터페이스 요구 사항이 기본 클래스에 의해 충족된다는 것을 알고 있습니다. 이 예와 아마 명확 :암시 적 구현을 사용하여 VB.NET에서 인터페이스를 만들 수있는 방법
interface FormInterface
{
void Hide();
void Show();
void SetupForm();
}
public partial class Form1 : Form, FormInterface
{
public Form1()
{
InitializeComponent();
}
public void SetupForm()
{
}
}
컴파일러는 형태로 구현되는 숨기기()와 쇼() 알고 있고 위의 코드는 잘 컴파일합니다. VB.NET에서이 작업을 수행하는 방법을 알 수 없습니다. 시도 할 때 :
Public Interface FormInterface
Sub Hide()
Sub Show()
Sub SetupForm()
End Interface
Public Class Form1
Inherits System.Windows.Forms.Form
Implements FormInterface
Public Sub SetupForm() Implements FormInterface.SetupForm
End Sub
End Class
그러나 컴파일러는 Form1이 인터페이스 'FormInterface'에 대해 'Sub Hide()'를 구현해야한다고 불평합니다. 실제로 다음을 추가해야합니까?
Public Sub Hide1() Implements FormInterface.Hide
Hide()
End Sub
내 모든 형태에
, 또는 더 나은 경로는 SetupForm를 (이 추상 기본 클래스)를 만드는 (당신은 VB.NET에서 어떻게 그렇게합니까)?
@ Kris Erickson : 나는이 "암시 적 구현"을 얻지 못했습니다 ... 어쨌든 인터페이스는 기본 클래스에 대한 반대마다 완벽하게 구현되어야합니다. 인터페이스는 구현을 파생 클래스로 강제 설정합니다. 이 메서드를 추가하려는 경우 VBNET의 MustInherit 클래스를 사용하는 것이 좋습니다. 이 정도면 충분합니까? –