Сţµç×ÓÊé > ÆäËûµç×ÓÊé > VB2008´ÓÈëÃŵ½¾«Í¨(PDF¸ñʽӢÎÄ°æ) >

µÚ97ÕÂ

VB2008´ÓÈëÃŵ½¾«Í¨(PDF¸ñʽӢÎÄ°æ)-µÚ97ÕÂ

С˵£º VB2008´ÓÈëÃŵ½¾«Í¨(PDF¸ñʽӢÎÄ°æ) ×ÖÊý£º ÿҳ3500×Ö

°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CH¡¡A¡¡PT¡¡E¡¡R¡¡¡¡¡¡1¡¡0¡¡¡¡¡¡¡ö¡¡¡¡¡¡¡¡L¡¡E¡¡A¡¡R¡¡N¡¡I¡¡N¡¡G¡¡¡¡¡¡A¡¡B¡¡O¡¡U¡¡T¡¡¡¡P¡¡E¡¡R¡¡S¡¡IS¡¡T¡¡E¡¡N¡¡CE¡¡271¡¡



¡¡¡¡¡¡¡¡¡¡The¡¡IBinary2TextProcessor¡¡interface¡¡has¡¡a¡¡single¡¡method£»¡¡Process£¨£©£»¡¡which¡¡has¡¡two¡¡param

eters£º¡¡the¡¡binary¡¡stream¡¡and¡¡the¡¡text¡¡stream¡£¡¡The¡¡implementation¡¡of¡¡IBinary2TextProcessor¡¡¡¡

would¡¡be¡¡responsible¡¡for¡¡reading¡¡the¡¡data¡¡from¡¡the¡¡binary¡¡stream¡¡and¡¡saving¡¡data¡¡to¡¡the¡¡¡¡

text¡¡stream¡£¡¡

¡¡¡¡¡¡¡¡¡¡The¡¡text¡­to¡­binary¡¡interface£»¡¡IText2BinaryProcessor£»¡¡follows¡¡a¡¡similar¡¡interface¡¡design£»¡¡¡¡

except¡¡that¡¡the¡¡input¡¡and¡¡output¡¡stream¡¡types¡¡are¡¡reversed¡£¡¡¡¡



Imports¡¡System¡£IO¡¡



Public¡¡Interface¡¡IText2BinaryProcessor¡¡

¡¡¡¡¡¡¡¡Sub¡¡Process£¨ByVal¡¡input¡¡As¡¡TextReader£»¡¡ByVal¡¡output¡¡As¡¡Stream£©¡¡

End¡¡Interface¡¡



¡¡¡¡¡¡¡¡¡¡The¡¡idea¡¡of¡¡both¡¡interface¡¡declarations¡¡is¡¡to¡¡focus¡¡on¡¡transferring¡¡data¡¡from¡¡one¡¡stream¡¡¡¡

to¡¡another¡£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡The¡¡shell¡¡for¡¡both¡¡data¡¡stream¡¡interfaces¡¡is¡¡very¡¡similar¡¡to¡¡the¡¡shell¡¡of¡¡the¡¡text¡­processing¡¡¡¡

stream£»¡¡except¡¡that¡¡binary¡¡and¡¡text¡¡streams¡¡are¡¡involved¡£¡¡The¡¡TextProcessor¡¡shell¡¡was¡¡respon

sible¡¡for¡¡knowing¡¡if¡¡the¡¡data¡¡stream¡¡was¡¡from¡¡the¡¡console¡¡or¡¡from¡¡a¡¡file¡£¡¡When¡¡manipulating¡¡¡¡

binary¡¡streams£»¡¡the¡¡source¡¡still¡¡needs¡¡to¡¡be¡¡ascertained£»¡¡but¡¡instead¡¡of¡¡creating¡¡text¡¡streams£»¡¡¡¡

binary¡¡streams¡¡are¡¡created¡£¡¡If¡¡you¡¡understand¡¡the¡¡mechanics¡¡of¡¡using¡¡a¡¡text¡¡stream£»¡¡you¡¡will¡¡¡¡

understand¡¡the¡¡mechanics¡¡of¡¡using¡¡a¡¡binary¡¡stream¡£¡¡

¡¡¡¡¡¡¡¡¡¡The¡¡following¡¡is¡¡the¡¡plete¡¡implementation¡¡of¡¡the¡¡text¡­to¡­binary¡¡bootstrap¡¡class¡£¡¡



Imports¡¡System¡£IO¡¡



Public¡¡Module¡¡Text2BinaryBootstrap¡¡

¡¡¡¡¡¡¡¡Public¡¡Sub¡¡DisplayHelp£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Console¡£WriteLine£¨¡¨You¡¡need¡¡help£¿¡¡Right¡¡now£¿¡¨£©¡¡

¡¡¡¡¡¡¡¡End¡¡Sub¡¡



¡¡¡¡¡¡¡¡Public¡¡Sub¡¡Start£¨ByVal¡¡args¡¡As¡¡String£¨£©£»¡¡_¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ByVal¡¡processor¡¡As¡¡IText2BinaryProcessor£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡#If¡¡DEBUG_OUTPUT¡¡Then¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Console¡£WriteLine£¨¡¨Argument¡¡count£¨¡¨¡¡&¡¡args¡£Length¡¡&¡¡¡¨£©¡¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡For¡¡Each¡¡argument¡¡As¡¡String¡¡In¡¡args¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Console¡£WriteLine£¨¡¨Argument¡¡£¨¡¨¡¡&¡¡argument¡¡&¡¡¡¨£©¡¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Next¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡#End¡¡If¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Dim¡¡reader¡¡As¡¡TextReader¡¡=¡¡Nothing¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Dim¡¡writer¡¡As¡¡Stream¡¡=¡¡Nothing¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡If¡¡args¡£Length¡¡=¡¡0¡¡Then¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡reader¡¡=¡¡Console¡£In¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡writer¡¡=¡¡Console¡£OpenStandardOutput£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ElseIf¡¡args¡£Length¡¡=¡¡1¡¡Then¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡If¡¡args£¨0£©¡¡=¡¡¡¨¡­help¡¨¡¡Then¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Text2BinaryBootstrap¡£DisplayHelp£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Return¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡If¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡294¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

272¡¡¡¡¡¡¡¡¡¡¡¡¡¡CH¡¡AP¡¡T¡¡E¡¡R¡¡¡¡¡¡1¡¡0¡¡¡¡¡¡¡ö¡¡¡¡¡¡¡¡L¡¡E¡¡A¡¡R¡¡N¡¡I¡¡N¡¡G¡¡¡¡¡¡A¡¡B¡¡OU¡¡T¡¡¡¡¡¡P¡¡E¡¡R¡¡S¡¡IS¡¡TE¡¡N¡¡CE¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡reader¡¡=¡¡File¡£OpenText£¨args£¨0£©£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡writer¡¡=¡¡Console¡£OpenStandardOutput£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ElseIf¡¡args¡£Length¡¡=¡¡2¡¡Then¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡If¡¡args£¨0£©¡¡¡¡¡¨¡­out¡¨¡¡Then¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Text2BinaryBootstrap¡£DisplayHelp£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Return¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡If¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡reader¡¡=¡¡Console¡£In¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡writer¡¡=¡¡File¡£Open£¨args£¨1£©£»¡¡FileMode¡£Create£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ElseIf¡¡args¡£Length¡¡=¡¡3¡¡Then¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡If¡¡args£¨0£©¡¡¡¡¡¨¡­out¡¨¡¡Then¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Text2BinaryBootstrap¡£DisplayHelp£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Return¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡If¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡reader¡¡=¡¡File¡£OpenText£¨args£¨2£©£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡writer¡¡=¡¡File¡£Open£¨args£¨1£©£»¡¡FileMode¡£Create£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Else¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Text2BinaryBootstrap¡£DisplayHelp£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Return¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡If¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡processor¡£Process£¨reader£»¡¡writer£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡writer¡£Close£¨£©¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡Sub¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡Module¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡The¡¡implementation¡¡is¡¡nearly¡¡identical¡¡to¡¡the¡¡Bootstrap¡¡class£»¡¡the¡¡differences¡¡are¡¡bolded¡£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Notice¡¡that¡¡instead¡¡of¡¡using¡¡the¡¡predefined¡¡Console¡£Out¡¡data¡¡member£»¡¡the¡¡OpenStandardOutput£¨£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡method¡¡is¡¡called£»¡¡and¡¡instead¡¡of¡¡¡¡File¡£CreateText£¨£©£»¡¡the¡¡File¡£Open£¨£©¡¡method¡¡is¡¡called¡£¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡The¡¡implementation¡¡of¡¡the¡¡binary¡­to¡­text¡¡stream¡¡shell¡¡is¡¡nearly¡¡identical¡¡to¡¡the¡¡one¡¡for¡¡the¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡text¡­to¡­binary¡¡stream¡¡shell¡£¡¡You¡¡can¡¡find¡¡it¡¡in¡¡this¡¡book¡¯s¡¡downloadable¡¡source¡¡code¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Defining¡¡the¡¡Type¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡The¡¡central¡¡piece¡¡when¡¡converting¡¡from¡¡a¡¡text¡¡stream¡¡to¡¡a¡¡binary¡¡stream¡¡or¡¡vice¡¡versa¡¡is¡¡the¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡definition¡¡of¡¡a¡¡type¡£¡¡The¡¡type¡¡might¡¡be¡¡a¡¡class¡¡or¡¡a¡¡struct£»¡¡and¡¡it¡¡is¡¡identified¡¡as¡¡being¡¡a¡¡type¡¡that¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡can¡¡be¡¡read¡¡and¡¡written¡£¡¡Identifying¡¡a¡¡type¡¡to¡¡be¡¡read¡¡and¡¡written¡¡is¡¡necessary¡¡so¡¡that¡¡when¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡reads¡¡or¡¡writes¡¡the¡¡type£»¡¡the¡¡underlying¡¡infrastructure¡¡knows¡¡what¡¡to¡¡do¡£¡¡Remember¡¡that¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡a¡¡binary¡¡data¡¡stream¡¡is¡¡a¡¡data¡¡stream¡¡where¡¡only¡¡the¡¡program¡¡knows¡¡what¡¡it¡¡means¡£¡¡To¡¡help¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡read¡¡and¡¡write¡¡those¡¡types£»¡¡you¡¡add¡¡identifiers¡¡that¡¡tell¡¡¡¡what¡¡to¡¡do¡£¡¡Fortunately£»¡¡you¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡don¡¯t¡¡need¡¡to¡¡know¡¡the¡¡inner¡¡details¡¡of¡¡binary¡¡serialization£»¡¡but¡¡just¡¡give¡¡¡¡an¡¡indication¡¡of¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡how¡¡to¡¡manage¡¡it¡£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡For¡¡the¡¡lottery¡­prediction¡¡example£»¡¡we¡¡will¡¡define¡¡a¡¡type¡¡that¡¡represents¡¡a¡¡lottery¡¡ticket¡£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡The¡¡lottery¡¡ticket¡¡will¡¡contain¡¡the¡¡draw¡¡date£»¡¡numbers£»¡¡and¡¡bonus¡¡number¡£¡¡Following¡¡is¡¡the¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡plete¡¡declaration¡¡£¨in¡¡the¡¡¡¡LottoLibrary¡¡project£©¡£¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡295¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CH¡¡A¡¡PT¡¡E¡¡R¡¡¡¡¡¡1¡¡0¡¡¡¡¡¡¡ö¡¡¡¡¡¡¡¡L¡¡E¡¡A¡¡R¡¡N¡¡I¡¡N¡¡G¡¡¡¡¡¡A¡¡B¡¡O¡¡U¡¡T¡¡¡¡P¡¡E¡¡R¡¡S¡¡IS¡¡T¡¡E¡¡N¡¡CE¡¡273¡¡



¡¡_¡¡

Public¡¡Class¡¡Ticket¡¡



¡¡¡¡¡¡¡¡Public¡¡Sub¡¡New£¨£©¡¡

¡¡¡¡¡¡¡¡End¡¡Sub¡¡



¡¡¡¡¡¡¡¡Public¡¡Sub¡¡New£¨ByVal¡¡drawDate¡¡As¡¡DateTime£»¡¡ByVal¡¡numbers¡¡As¡¡Integer£¨£©£»¡¡_¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ByVal¡¡bonus¡¡As¡¡Integer£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_drawDate¡¡=¡¡drawDate¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_numbers¡¡=¡¡numbers¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_bonus¡¡=¡¡bonus¡¡

¡¡¡¡¡¡¡¡End¡¡Sub¡¡



¡¡¡¡¡¡¡¡Public¡¡Property¡¡Bonus£¨£©¡¡As¡¡Integer¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Get¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Return¡¡_bonus¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡Get¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Set£¨ByVal¡¡value¡¡As¡¡Integer£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_bonus¡¡=¡¡value¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡Set¡¡

¡¡¡¡¡¡¡¡End¡¡Property¡¡



¡¡¡¡¡¡¡¡Public¡¡Property¡¡DrawDate£¨£©¡¡As¡¡DateTime¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Get¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Return¡¡_drawDate¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡Get¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Set£¨ByVal¡¡value¡¡As¡¡DateTime£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_drawDate¡¡=¡¡value¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡Set¡¡

¡¡¡¡¡¡¡¡End¡¡Property¡¡



¡¡¡¡¡¡¡¡Public¡¡Property¡¡Numbers£¨£©¡¡As¡¡Integer£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Get¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Return¡¡_numbers¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡Get¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Set£¨ByVal¡¡value¡¡As¡¡Integer£¨£©£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_numbers¡¡=¡¡value¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡Set¡¡

¡¡¡¡¡¡¡¡End¡¡Property¡¡



¡¡¡¡¡¡¡¡Private¡¡_bonus¡¡As¡¡Integer¡¡

¡¡¡¡¡¡¡¡Private¡¡_drawDate¡¡As¡¡DateTime¡¡

¡¡¡¡¡¡¡¡Private¡¡_numbers¡¡As¡¡Integer£¨£©¡¡

End¡¡Class¡¡



¡¡¡¡¡¡¡¡¡¡Ticket¡¡is¡¡plain¡­vanilla¡¡data¡¡class¡£¡¡However£»¡¡the¡¡bolded¡¡parts¡¡deserve¡¡an¡¡explanation¡£¡¡The¡¡¡¡

first¡¡bolded¡¡part¡¡is¡¡a¡¡set¡¡of¡¡angled¡¡brackets¡¡surrounding¡¡the¡¡identifier¡¡Serializable£»¡¡which¡¡¡¡

represents¡¡a¡¡¡¡attribute¡£¡¡In¡¡£»¡¡you¡¡have¡¡the¡¡ability¡¡to¡¡describe¡¡types£»¡¡methods£»¡¡and¡¡so¡¡on¡£¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡296¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

274¡¡¡¡¡¡¡¡¡¡¡¡¡¡CH¡¡AP¡¡T¡¡E¡¡R¡¡¡¡¡¡1¡¡0¡¡¡¡¡¡¡ö¡¡¡¡¡¡¡¡L¡¡E¡¡A¡¡R¡¡N¡¡I¡¡N¡¡G¡¡¡¡¡¡A¡¡B¡¡OU¡¡T¡¡¡¡¡¡P¡¡E¡¡R¡¡S¡¡IS¡¡TE¡¡N¡¡CE¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Attributes¡¡are¡¡descriptions¡¡that¡¡are¡¡used¡¡in¡¡a¡¡particular¡¡context¡£¡¡As¡¡opposed¡¡to¡¡the¡¡identifiers¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Public¡¡and¡¡MustInherit£»¡¡which¡¡are¡¡descriptions¡¡that¡¡fundamentally¡¡describe¡¡how¡¡a¡¡type¡¡will¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡behave£»¡¡the¡¡Serializable¡¡attribute¡¡describes¡¡the¡¡behavior¡¡of¡¡a¡¡type¡¡in¡¡a¡¡specific¡¡context¡ªwhen¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡the¡¡object¡¡is¡¡to¡¡be¡¡converted¡¡from¡¡memory¡¡to¡¡a¡¡data¡¡stream¡¡and¡¡vice¡¡versa¡£¡¡Fundamental¡¡descrip

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡tions¡¡are¡¡important¡¡to¡¡the¡¡¡¡runtime£»¡¡whereas¡¡¡¡attributes¡¡are¡¡generally¡¡not¡¡important¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡to¡¡the¡¡runtime£»¡¡but¡¡important¡¡to¡¡libraries¡¡that¡¡the¡¡runtime¡¡will¡¡execute¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡öNote¡¡¡¡Serialization¡¡is¡¡the¡¡process¡¡of¡¡turning¡¡an¡¡object¡¡into¡¡a¡¡format¡¡that¡¡can¡¡be¡¡saved¡¡or¡¡sent¡¡over¡¡the¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡network¡£¡¡Deserialization¡¡is¡¡the¡¡process¡¡of¡¡retrieving¡¡the¡¡serialized¡¡object¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡The¡¡Serializable¡¡attribute¡¡describes¡¡the¡¡ability¡¡to¡¡serialize¡¡the¡¡type¡¡as¡¡it¡¡is¡¡declared¡£¡¡When¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ticket¡¡is¡¡converted¡¡into¡¡a¡¡binary¡¡stream£»¡¡the¡¡programmer¡¡does¡¡not¡¡nee

·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨2£© ²È£¨2£©

Äã¿ÉÄÜϲ»¶µÄ