Public MustInherit Class Account
Private Name As String
Protected Balance As Double
Public Sub New(ByVal Nm As String, ByVal Bal As Double)
Name = Nm
Balance = Bal
End Sub
Public Overridable Sub Credit(ByVal Amount As Double)
Balance = Amount
End Sub
Public Overridable Sub Debit(ByVal Amount As Double)
Balance = Amount
End Sub
Public Overridable Sub Display()
MessageBox.Show("name " & Name & "Money " & Balance)
End Sub
Public Sub ChangeName(ByVal newName As String)
Name = newName
End Sub
Public MustOverride Function CalculateBankcharge() As Double
End Class
-----------------------------------------------------------------------------------------------
Public Class SavingsAccount
Inherits Account
Private MinBalance As Double
Public Sub New(ByVal Nm As String, ByVal Bal As Double, ByVal Min As Double)
MyBase.new(Nm, Bal)
MinBalance = Min
End Sub
Public Overrides Sub Debit(ByVal Amount As Double)
If Amount <= Balance Then
MyBase.Debit(Amount)
End If
End Sub
Public Overrides Sub Display()
MyBase.Display()
MessageBox.Show("give me 5,beacouse :" & MinBalance & "less")
End Sub
Public Overrides Function CalculateBankcharge() As Double
If balance < MinBalance Then
Return 5.0
Else
Return 0.0
End If
End Function
End Class
-------------------------------------------------------------------------------------------------------------
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim sa As New SavingsAccount("me", 100.0, 25)
sa.Display()
sa.Credit(100)
sa.Debit(180)
sa.ChangeName("zhang lei")
sa.Display()
MessageBox.Show(sa.CalculateBankcharge())
End Sub