|
dr = d
End Sub
Public Sub Show()
MessageBox.Show("Engine: " + e.model)
dr.Show()
End Sub
End Class
'----------------
Public Class Form1
Inherits System.WinForms.Form
Public Sub New()
MyBase.New()
Form1 = Me
'This call is required by the Win Form Designer.
InitializeComponent()
'TODO: Add any initialization after the InitializeComponent()
call
End Sub
'Form overrides dispose to clean up the component list.
Public Overrides Sub Dispose()
MyBase.Dispose()
components.Dispose()
End Sub
#Region " Windows Form Designer generated code "
.......
#End Region
Protected Sub Form1_Click(ByVal sender As Object, ByVal
e As System.EventArgs)
Dim civic As New Car()
Dim d1 As New Driver("Wang")
Dim d2 As New Driver("Kao")
civic.assignTo(d1)
civic.Show()
civic.assignTo(d2)
civic.Show()
End Sub
End Class
此程序输出﹕
Model: Honda
Driver: Wang
Model: Honda
Model" Kao
Car之对象诞生后﹐也诞生Engine之对象e ﹔同时立即指定司机﹐如下指令﹕
Dim civic As New Car()
Dim d1 As New Driver("Wang")
.....
civic.assignTo(d1)
.....
日常生活中的常见情况﹕汽车对象诞生时﹐不须立即指定司机对象。例如﹐汽车出厂时或闲置时并无司机﹐且汽车经常更换司机。此情形下﹐应先诞生civic对象和d1对象,如下:
此时,未立即指定司机﹔而必要时才以assignTo()程序指定司机。例如,将d1指定给civic对象﹐就令civic内之参考变量dr指向d1
对象,如下:
|