说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB 6.0中类聚集关系的实现

HTML文档下载 WORD文档下载 PDF文档下载
VB 6.0中类聚集关系的实现
作者:武汉交通科技大学
杨青 刘洪星
---- 类之间最主要的关系有两种,它们是聚集(Aggregation)和继承(Generelization)。聚集表示类之间的关系是整体与部分的关系,例如一个家庭有一个父亲、一个母亲和若干个孩子。类之间的聚集关系又称包含关系,一个类由若干个其他类组合而成,当该类的实例被创建后,组成它的各类的实例将自动被创建。

---- 下图描述了Family类与组成它的各类之间的关系。Family类与Father类、Mother类的关系是一对一的关系,而Family类与Child类的关系是一对多的关系。为了简化类之间的关系,我们增加了一个Children类,Children类是Child类的集合,因此Family类与Children类直接关联,形成一对一的关系。

Family------------ > Father
|
-------- > Mother
|
-------- > Childred ------ >child

---- VB6.0对类聚集关系的实现提供了较好的支持。在下面的程序中,我们仅给出了与Falimy类、Children类、Child类的具体实现有关的代码,以此为例说明类聚集关系的实现方法。
---- 程序中定义了三个类模块:Falimy类模块,Children类模块,Child类模块。在Falimy类模块中,利用属性过程,Mother类、Father类、Children类被定义为Family类的只读属性。下面是Family 类模块中声明部分的代码。

Option Explicit
Private mFather As New Father
Private mMother As New Mother
Private mChildren As New Children
Public Property Get Father() As Father
Set Father=mMother
End Property
Public Property Get Mother()As Mother
Set Mother()=mMother
End Property
Public Property Get Children() As Children
Set Children= mChildren
End Property

---- 下面是Children类模块的代码,首先在类模块的说明部分创建了集合类Collection的实例mcolChildren。在定义公共方法Add时,通过引用mcolChildren的Add方法将新的Child 对象添加到集合中,Children类被定义成Child类的集合。通过直接引用mcolChildren的属性Count定义了Children类的公共属性Count,通过直接引用mcolChildren的方法Item定义了Children类的公共方法Item。
---- 我们还可以根据需要实现其他的属性和方法。通过创建Children类,与Children类有关的所有代码都封装起来,使得Children类可以进一步重用,从而较好地体现了面向对象程序设计的原则。

Option Explicit
Private mcolChildren As New Collection
Public Property Get Count() As Long
Count = mcolChildren.Count
End Property
Public Function Add(ByVal Name As String,
ByVal BirthDayAs Date,ByVal Sex As Boolean ) As Child
Dim empNew As New Child
Static intNum As Integer
With empNew
intNum = intNum + 1
.Name = Name
.BirthDay= BirthDay
.Sex=Sex
mcolChildren.Add empNew
End With
Set Add = empNew
End Function
Public Function Item(ByVal Index As Variant) As Child
Set Item = mcolChildren.Item(Index)
End Function

---- 下面是Child类声明部分的代码。
Option Explicit
Public Name As String
Public BirthDay As Date
Public Sex As Boolean

---- 程序中还定义了一个窗体模块。在窗体上布置有三个文本框txtName、txtBirthDay、txtSex,一个列表框lstChildren,两个命令按纽cmdAddChild、cmdListChild。
---- 在窗体模块中首先创建了一个Family类的实例sbMain,Children类和Child类的实例也随之被创建。在事件过程中,仅通过引用sbMain的属性Children,我们就可以实现对Children类的各种操作。

Option Explicit
Public sbMain As New Family
Private Sub cmdAddChild_Click()
sbMain.Children.Add txtName.Text,
txtSalary.Text,txtSex.Text
txtBirthDay.Text = " "
txtName.Text = " "
txtSex.Text=" "
End Sub
Private Sub cmdListChild_Click()
Dim emp As New Child
Dim i As Long
lstChild.Clear
For i = 1 To sbMain.Children.Count
Set emp = sbMain.Children.Item(i)
lstChild.AddItem emp.Name & ", "
& emp.BirthDay&", "emp.Sex
Next
End Sub

VB怎样得到文本框(TextBox)中的文本行数? 制造出透明的Form -VB资料 VB制作半透明窗体和形状不规则的窗体 VB制作方向按钮 VB制作渐变的窗口背景色 字体闪烁 -VB资料 自动改变控件大小-VB资料 自制IE风格按纽控件-VB资料 VB6.0中通过MSChart控件调用数据库 用VB6实现动态增减控件 ActiveX控件的创建-VB资料 ADO控件和DATA控件的冲突(不能共存)的解决方法-VB资料 Combo的自动查询技术 -VB资料 DirectX7.0使用心得(1) -VB资料 DirectX7.0使用心得(2) -VB资料 DirectX7.0使用心得(3) -VB资料 FSO对象模型在VB中的应用 MsComm 控件的文字传输范例 -VB资料 Office或IE4风格的ToolBar -VB资料 Regsvr32.exe注册控件的具体用法-VB资料 TextBox的自动调节 -VB资料 TextBox实现打印机效果 -VB资料 TreeView的基本操作-VB资料 VB5中DBGRID控件在VB6中使用 VB与MS-Draw开发通用作图软件 VB中APP对象及其应用 VB中list控件的功能扩充 VB中用Multimedia MCI控件开发多媒体应用 Win Api在VB中的妙用 WINDOWS SCRIPT HOST对象在VB中的使用 安装向导生成程序组并建立多个程序项 -VB资料 在视图上建立快照日志碰到的问题? 求助:怎么用XSL制作网页菜单? 100分求助如何用DirectShow技术创建ASF格式的文件 数字的从大到小排列问题 300分求多线程解决哲学家进餐问题的源码 关于datalist 武汉的朋友帮忙啊! 严打! 我是新手,谁能告诉我如何新建类? 各位GGJJ,帮帮忙!如果每点击一次button建立一个线程,建立多个不同的线程,怎样实现? 请问那位windows98高手可以帮帮忙忙 各位GGJJ,帮帮忙!如果每点击一次button建立一个线程,建立多个不同的线程,怎样实现? 关于XML中NODE的类型的问题(特急!!!) 大家来帮小弟以下啊,!!! 如果我把一个TAdoQuery变量送到子函数中? 谁能告诉我Bjarne Stroustrup应该怎么读? 说了半天到底谁的是正确的?在100分。delete p 是删去p指针,还是它指到的内容,*p。还是删去什么?free(p) 呢? 大家好,我有一个问题问一下你们很急的。我在线等待!!! 我要去上海找工作(java) 在线提问:各位朋友帮忙啊!很急啊! 关于通过telnet修改2000的用户密码问题 请问有无现存的四舍五入函数?(in vc) 请指教有关bde和9i的问题 帮助!谢谢! 着急!!!!!!!!!!!!!!! 关于CHM文件的菜鸟问题 各位帮帮忙,我的程序重要用定时器,怎么做呀? 为什么没法看贴子? 如何在PB8。0上创建可执行文件,,,,,,(请详细一点) 关于TStrings怎样去取值? 如何编程更改IP? 谁来帮帮我!!!!! 生成密码字典,有什么好主意呢?说说好么? 有关c++中何时分配内存的问题 急救!! 请教:有关列表框 谁有win98操作培训讲义,给我发一份到—— win2000下如何对并口进行操作? 请教IBM Open Class Libraries的问题 小弟高分求“Linux 0.02版”的源代码! 理解csdn,以后再不发政治问题的贴了。我的名字也马上改。 什么是流???(笑话) 讨论.net平台上的软件开发,请教高手 书和方法! 斑竹不要删这个帖子,别人给我做了一个FLASH网站,我放50分给他的:) 为什么看不到 关于拷贝函数 最老的帖子是什么呀?第一张帖子是谁发的呀? 我想使上下结构的网页框架位置不可以调(上方的导航条固定). WebLogic过期了,在线等待! 高手手请进!文本文件数据库表的问题?????? 弹簧测力计的下端吊一球,示数为10N,球一半浸入水中,弹簧测力计示数为8N,这时小球所受浮力为2N,求体积.急若金属球全部浸没在水中,弹簧测力计的示数为多少? 1.一只空玻璃杯的质量为300克,装满水后的总质量为700克,若将200克的颗粒状的沙子缓慢的浸没到玻璃杯中,称得玻璃杯的总质量为820克,且玻璃杯的容积为400cm^3.求:沙子的密度.2.空心的金属球 请问真空高压断路器的电路图那有?或者里面机构的运动分析. 硅太阳能电池是否利用了原电池原理 如图所示,在光滑的水平板的中央有一光滑小孔,一根不可伸长的轻绳穿过小孔.绳的两端分别拴有一小球C如图所示,在光滑的水平板的中央有一光滑的小孔,一根不可伸长的轻绳穿过小孔.绳 电流在某断电路所做的功与什么有关 蓄电池 串联 并联 容量串联电池容量不变,电压累加.例:一组两只12V*100AH的电池,串联后电压为24V,容量为100AH并联的电压保持不变.容量累加.例;一组两只12V100AH点电池,并联后电压仍为12V.容量按 如图所示,在固定光滑水平板上有一光滑小孔O,一根轻绳穿过小孔一端连接质量m=1kg的小球A,另一端连接质量M=4kg的物体B.当A球沿半径r=0.1m的圆周做匀速圆周运动时,要使物体B不离开地面,A球做圆 电路短接后好像会截掉电流.怎么回事啊?整天碰到这些题就头疼. 电池串联容量问题电池串联容量为什么不增加?电池容量的mah到底表示什么?电流A不是指若果在1s内通过导体横截面的电荷量是1C,导体中的电流就是1A吗?那1ah就是3600c的电荷了,那两个电池串联 一块长方体水泥板,长4分米,宽3分米,厚1分米,它的表面积是多少平方米? 五个长,宽,高分别是5厘米,5厘米,1厘米的长方体叠成一个正方体,这个正方体的体积是( ).急用 两块12V10AH蓄电池串联后容量是多少? 30分求解,将两节4.2v 1A的电池串联之后电容量是多少串联之后,组成的新电源电压为8.4v多少毫安呢?我需要用4.2v 2000mA的锂电池做成24V 10A的电源,大概需要多少块锂电池,怎么连接呢?(电压可以高 1p+N漏电断路器零线火线接反了会出现什么现象 关于电池串联后的容量 请查看帖子 http://tieba.baidu.com/f?kz=1137287613 因为图片上传不了 帖子里>点击图片>大窗口模式>可查看大图> 共用零线 火线分开的 共用漏电保护器 ,现在我不想共用漏电保护器 ,因为他家老跳,怎么办?就一个共用的漏电保护器,我不用了,只让他用.漏电保护器出来的零线共用的, 三根火线接在4P漏电保护器上端,一根零线接在漏电保护器的下端时漏保怎么老跳 周公解梦大全查询 梦见两条蛇有一条被我打死了是什么意思昨晚我梦见两条大蛇,一条是蓝花纹,一条是银花纹.刚开始两条蛇在围着一个圆圈嬉闹,我发现了正要转身离开,突然银花纹的蛇向我 家庭电路中,当进户线的火线与零线的电路不相等,且差值达到一定值时,安装在干路上的漏电保护器就会切断电路,则下列情况可能使漏电保护器切断电路的是A、用电器短路B、用电器金属外壳 双控开关的电路在实际接线中是怎样接的呢?我能够看懂双控开关的电路图,可是实际电路中,我们的三根线(火线,零线,地线)又是怎样接入开关上的呢,另外,我很想知道双控开关上有几根接线头, 动物的什么行为是先天性行为 体积是1dm3密度是4X10三次kg/m3的实心合金球投入足够多的水槽体积是1dm^3,密度是4×10^3kg/m^3的实心合金球,投入足够多的水槽中沉底后静止.(2)将它与一块体积是8dm^3的木块连在一起后再入水槽 如图所示,质量为m的小球与穿过光滑水平板中央小孔O的轻.一质量为m的小球与穿过光滑水平般中央小孔O的轻绳相连,用手拉着小球的另一端使小球在水平板上绕O做半径为a、角速度为w1的匀速 蓄电池并联和串联这是两个12伏20安的电瓶,我这样弄是并联还是串联? 是否还是12伏20安?电瓶前边我自己弄的插头能否充电? 用普通电动车充电器行么?要是不行 用什么充电? 1.体积是1dm3,密度是4×103kg/m3的实心合金球,投入足够多的水槽中沉底后静止.(1)球对槽底的压力是多大 有一光滑水平板,板的中央有一小孔,孔内穿入一根光滑轻线,轻线的上端系一质量为M的小球,轻线的下端系着质量分别为m1和m2的两个物体,当小球在光滑水平板上沿半径为R的轨道做匀速圆周运 蓄电池串联并联容量为什么同样电压同样电流的蓄电池串联与并联后的容量不同,串联与并联,负载的用电电流都是每个蓄电池的1/2,其结果为何不同 如图所示,在水平固定的光滑平面板上,有一质点为m的质点p,与穿过中央小孔的绳子H的轻绳一端连着.平板与小孔是光滑的,使质点做半径为a,角速度为w1的匀速圆周运动.若绳子迅速放松至某一长 一根长72厘米的铁丝,折成一个长,宽,高的比是3:2:1的长方体模型,这个模型的体积是 立方厘米.急用! 物体m用线通过光滑的水平板上的小孔与砝码M相连,并且正在做匀速圆周运动,如果减小M的质量,则物体的线速度v的大小变化情况? 两个体积相等的正方体叠成一个长方体,长方体的高是12厘米,这个长方体的体积是多少立方厘米 利用公式 空气开关跳闸说明电路中出现短路,请问这个问题是对还是错 电池串联 容量不变吗? 额定短路分断能力过小会有什么后果 有一根铁丝长144米,制成一个长方体,长、宽、高的比是3:1:2,这个长方体的体积是多少立方米? 请问哪位高手知道变压器是怎么把交流电转化为直流电的?我要原理,说对给悬赏. 一个长方体的高是2厘米,再叠一个同样大小的长方体,就可以成为一个正方体,原来长方体的体积是多少立方厘米 把一根2米长的铁丝折成一个长15厘米,宽10厘米的长方体,这个长方体高()厘米.这个长方体的体积是() 2节电池并联容量会怎么样?串联后是不是容量不变? .额定短路和分断能力Icu=lcs:6000A;是什么意思 用一根长192厘米的铁丝,围成一个长,宽,高的比是3:2:1的长方体,求围成的长方体体积是多少 为什么要把交流电转变成直流电?现在的家电产品都是靠把220V电压交流电转换成直流电,在经过滤波、降压一系列工作使得家电产品正常工作!为什么不直接用交流电呢?本人是新人,暂没积分!没 26、 如图所示,容器底部用一根细绳挂住一木球,使木球完全浸没在水中,已知木球的密度是水的密度的3/5,如图所示,容器底部用一根细绳挂住一木球,使木球完全浸没在水中,已知木球的密度是水 湖北省市级城市的人口数量和人均GDP 急!从变压器的漏电保护器上引出的零线接地为什么不跳闸从变压器的漏电保护器上引出的零线接地为什么不跳闸.我们用的零线是无包皮铝线(3个火线是有包皮的铝线),现在线上有很多树枝 一松木球悬浮于油和水的分界面处,且木球浸入油和水的体积比是3比1.那么油的密度是多少?木的密度是0.4X10^3Kg/m^3 如果GDP增长率是7%,人口增长率是1%,那么人均GDP增长率是多少? 直流电怎么变成交流电 地线和零线混接漏电保护器为什么会跳闸有时调有时不挑 两个实心木球的半径之比为1:2则它们的密度之比为什么?体积之比为什么?质量之比为什么? 直流电是怎样变成交流电? 接地工作原理以及漏电保护器的工作原理?为什么接地以后,当是通过金属外壳流入大地,而不是人体触碰了以后流入大地? 装修完漏电开关总掉,零线、火线、地线都对调过,没用,我家刚装修完,厨房电路总是漏电开关跳闸,我把零线、火线对调了,可过1个月后又掉闸,从此漏电开关推上去5分钟后就自己掉,所有电器我 怎样将交流电变成直流电(原理),及用到的配件? 为什么漏电保护器的工作零线不能重复接地,我现在没有明白为什么,是不是如果重复接地,就算漏电,漏电保护器跳了,火线和接地会形成回路,照样能有电 实心木球的密度是0.4×10⒊kg/个金属图我没办法画了 实心木球的密度是0.4×10⒊kg/m⒊,木球下面用细线及一个金属球,木球的体积是金属块的2倍,把他们放入水中恰好悬浮,球金属块的密度 一物体重为10N,当一半体积浸入水中时,弹簧测力计示数为8N.求浸入一半体积时,所受的浮力?求浸入一半体积时,所受的浮力?求物体体积?物体密度?全部浸入时物体所受的浮力 漏电保护器接电网时为什么系统零线不得重复接地?漏电保护器用于接地电网时,系统零线不得重复接地,避免产生误动作,这里说的系统零线是什么意思?为什么说不能重复接地?(我电工基础比 提问一道物理计算题 机车以3.2×10的五次方N的推力推动火车在轨道上缓慢匀速滑动了50m后脱离了危险地带.若火车总重为1.5×10的七次方N,铺设轨道的地面能承受的最大压强为7.5×10的五次方Pa.
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘