在C#中,我可以創建一個接口,並且當我使用該接口時,編譯器知道某些接口需求由基類實現。這可能是用一個例子更清晰:如何在VB.NET中使用隱式實現創建接口
interface FormInterface
{
void Hide();
void Show();
void SetupForm();
}
public partial class Form1 : Form, FormInterface
{
public Form1()
{
InitializeComponent();
}
public void SetupForm()
{
}
}
編譯器知道隱藏()和show()的形式實現和上面的代碼編譯就好了。我無法弄清楚如何在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」。我是否需要添加以下內容?
Public Sub Hide1() Implements FormInterface.Hide
Hide()
End Sub
在我的所有形式,或者是一種較好的途徑創建具有SetupForm(抽象基類)(和你怎麼做,在VB.NET)?
@Kris Erickson:我沒有得到這個「隱含的實現」的東西......無論如何,我猜接口必須完全實現,因爲它們與基類相對。一個接口將其實現強制爲一個派生類。如果你只想添加這些方法,我可能會考慮一個基本的抽象類(VBNET中的MustInherit)。這是否足夠滿足您的需求? – 2010-02-10 14:55:05