Como: Converter código implementa um novo formulário de herança
Visual Basic 6.0 usa o Implements demonstrativo para herança da interface. Versões mais recentes de Visual Basic oferecem dois tipos de herança, usando o Implementa Declaração e o Declaração Inherits. Este tópico demonstra como converter código usando essas duas opções.
O seguinte código de Visual Basic 6.0 é considerado nesta página:
' Account class.
Private mvarBalance As Currency
Private mvarOwner As String
Public Property Let Owner(ByVal vData As String)
mvarOwner = vData
End Property
Public Property Get Owner() As String
Owner = mvarOwner
End Property
Public Function Deposit(ByVal amount As Currency) As Currency
End Function
' Savings class.
Private mvarBalance As Currency
Private mvarOwner As String 'local copy
Public Property Let Owner(ByVal vData As String)
mvarOwner = vData
End Property
Public Property Get Owner() As String
Owner = mvarOwner
End Property
Public Function Deposit(ByVal amount As Currency) As Currency
End Function
Para converter usando uma interface comum
Executar o Upgrade Wizard.
Observação: O Assistente de atualização é uma ferramenta usada para atualizar um aplicativo Visual Basic 6.0 para Visual Basic 2008. É iniciado automaticamente quando você abre um projeto Visual Basic 6.0 em Visual Basic 2008. Para obter mais informações, consulte Como: Atualizar um projeto com o Assistente de atualização do Visual Basic.
O assistente converterá a Account classe a () uma interface_Account) e criará duas classes que implementam o (interfaceAccount e Savings.)
Interface _Account Property Owner() As String Function Deposit(ByVal amount As Decimal) As Decimal End Interface Friend Class Account Implements _Account Private mvarBalance As Decimal Private mvarOwner As String Public Property Owner() As String Implements _Account.Owner Get Owner = mvarOwner End Get Set(ByVal Value As String) mvarOwner = Value End Set End Property Public Function Deposit(ByVal amount As Decimal) _ As Decimal Implements _Account.Deposit End Function End Class Friend Class Savings Implements _Account Private Function Account_Deposit(ByVal amount As Decimal) _ As Decimal Implements _Account.Deposit End Function Private Property Account_Owner() As String _ Implements _Account.Owner Get End Get Set(ByVal Value As String) End Set End Property Public Function AddInterest() As Object End Function End Class
O código para criar e usar uma instância do Savings conta poderia ter esta aparência.
Dim savings As _Account savings = New Savings savings.Owner = "Jeff Pike"
Se você desejar Account para ser a classe base, você pode modificar a saída do assistente.
Para converter utilizando interfaces e Implements
Executar o Upgrade Wizard.
Excluir o Account classe.
Renomear o _Account classe a Account.
No Savings classe, substitua _Account com Account.
Friend Class Savings Implements Account Private Function Account_Deposit(ByVal amount As Decimal) _ As Decimal Implements Account.Deposit End Function Private Property Account_Owner() As String Implements Account.Owner Get End Get Set(ByVal Value As String) End Set End Property Public Function AddInterest() As Object End Function End Class
O código para criar e usar uma instância de conta Savings pode parecer com o seguinte.
Dim savings As Account savings = New Savings savings.Owner = "Jeff Pike"
Se você desejar que o Account classe seja uma classe base, você pode modificar a saída do assistente.
Para converter utilizando Classe e Herança
Executar o Upgrade Wizard.
Excluir o _Account interface.
No Account classe, remova referências para o _Account em Implements instruções.
Friend Class Account Private mvarBalance As Decimal Private mvarOwner As String Public Property Owner() As String Get Owner = mvarOwner End Get Set(ByVal Value As String) mvarOwner = Value End Set End Property Public Function Deposit(ByVal amount As Decimal) As Decimal End Function End Class
No Savings classe, substitua Implements _Account com Inherits Account.
No Savings classe, remova o Owner e Deposit membros.
Friend Class Savings Inherits Account Public Function AddInterest() As Object End Function End Class
O código para criar e usar uma instância do Savings conta poderia ter esta aparência.
Dim savings As Account savings = New Savings savings.Owner = "Jeff Pike"
Consulte também
Tarefas
Como: Atualizar um projeto com o Assistente de atualização do Visual Basic
Referência
Declaração Class (Visual Basic)
Declaração Interface (Visual Basic)