¼Ì³ÐÓë½Ó¿Ú
¸ÅÊö£ºÁ˽âÔÚMicrosoft Visual Basic .NETÖеÄÀà¼Ì³ÐÓë½Ó¿ÚʵÏÖµÄÇø±ð¡£
Ä¿±ê
· Ñо¿¼Ì³ÐÓë½Ó¿ÚʹÓñ³ºóµÄ¸ÅÄî
· ѧϰºÎʱʹÓÃÀà¼Ì³Ð£¬ºÎʱʹÓýӿÚʵÏÖ
񻂗
ΪÁ˳ä·ÖÀûÓñ¾ÎÄ£¬¶ÁÕß±ØÐë¾ß±¸ÒÔÏ»ù´¡£º
· ÊìϤMicrosoft® Visual Basic® .NETÓïÑÔ
· ÊìϤMicrosoft Visual Basic 6.0
· »ù±¾Àí½â¼Ì³ÐÖеÄÊõÓï
Ŀ¼
ÃæÏò¶ÔÏó±à³Ì:Ϊʲô±à³Ì?
¼Ì³Ð²ã´Î
´´½¨ºÍʵÏÖ½Ó¿Ú
±È½ÏÀà¼Ì³ÐÓë½Ó¿ÚʵÏÖ
¶ÔÏóºÏ³É
Óë Visual Basic 6.0µÄÇø±ð?
С½á
ÃæÏò¶ÔÏó±à³Ì£ºÎªÊ²Ã´Âé·³?
Ö»ÓÐһС²¿·ÖVisual Basic 6.0³ÌÐòÔ±·¢ÏÖËûÃÇÔÚ¹¹½¨Visual Basic 6.0´°ÌåʱÐèÒª´´½¨ÀàÄ£¿é£¬¶ø²»ÊÇʹÓÃ×Ô¶¯´´½¨µÄ´°Ìå¡£ÁíÍ⣬´ó¶àÊýµÄÈ·ÔÚVisual Basic 6.0Öд´½¨¹ýÀàÄ£¿éµÄ³ÌÐòÔ±£¬´´½¨´´½¨ÀàÄ£¿éµÄÔÒò£¬Ö»ÊÇÒòΪҪ¹¹½¨ActiveX®¿Ø¼þ£¬²¢ÇÒ²»µÃ²»Ê¹ÓÃÀàÄ£¿é²ÅÄÜ×öµ½¡£
ÔÚVisual Basic .NETÖУ¬¾ÍÏóÔÚËùÓÐÆäËüÓïÑÔÖÐÒ»Ñù£¬ÃæÏò¶ÔÏó±à³Ì£¨OOP£©²»ÊÇÒ»¸öÑ¡Ôñ£¬¶øÊÇÒ»ÖÖÐèÇó¡£Ã¿¶Î´úÂë¶¼ÊÇijÖÖÀàÐÍ£¬ÈçÀà¡¢½Ó¿Ú¡¢½á¹¹£¨½á¹¹ÊÇÖµÀàÐÍ£¬ÀàËÆÓÚVisual Basic 6.0ÖеÄÓû§×Ô¶¨ÒåÀàÐÍ£©£¬»òö¾ÙÖµµÄÒ»²¿·Ö¡£ÉõÖÁÔÚVisual Basic .NETÖп´ÉÏÈ¥¶ÀÁ¢µÄ¹ý³Ìʵ¼ÊÉÏÒ²ÊÇ×÷ΪÒþ²ØÀàµÄ¹²Ïí·½·¨ÊµÏֵġ£
ΪºÎOOPÈç´ËÇ¿´ó£¿ÎªÊ²Ã´Î¢ÈíÒ»Ö±ÒªÇó´ó¼ÒѧϰÓÃOOPÔÚVisual Basic .NETÖбà³Ì£¿
´¦Àí¸´ÔÓÐÔÓë±ä»¯
OOP½â¾öÁ½¸öÆÕ±éµÄÈí¼þ¿ª·¢ÎÊÌ⣺´¦Àí¸´ÔÓÐԺʹ¦Àí±ä»¯¡£ÀûÓÃOOP¾ÍÈÝÒ×Éè¼ÆºÍʹÓø´ÔÓµÄÈí¼þϵͳ£¬²¢ÇÒÒ×ÓÚÐÞ¸ÄÕâЩϵͳ¶øÎÞÐè´òÂÒËüÃÇ¡£
Visual Basic 6.0³ÌÐòÔ±ÐèÒªÓÃADO»òDAO¶ÔÏóÄ£ÐÍ»ñµÃºÍ²Ù×÷Êý¾Ý£¬ÉèÏ룬Èç¹ûÿ¸ö²Ù×÷¶¼±ØÐëµ÷ÓöÀÁ¢µÄº¯Êý£¬¶ø²»ÊÇʹÓöÔÏó£¨Èç¼Ç¼¼¯£©µÄ·½·¨»òÊôÐÔ£¬Íê³ÉÕâÑùµÄ¹¤×÷»áÓжàô¼è¾Þ¡£ÀýÈ磬Èç¹ûÒªÓÃADO»òDAOÏòÁбí¿òÖÐ×°ÈëÊý¾Ý£¬´óÔ¼Òª±àд10ÐдúÂë¡£¶øÖ±½ÓʹÓÃODBC APIº¯Êý£¬´óÔ¼Òª±àд50ÐдúÂ룡¿ÉÒÔ¿´µ½£¬OOP·½·¨¸üÈÝÒ×ʵÏÖ¡£
ÔÙÀýÈ磬¿¼ÂÇ΢ÈíWindows® API¡£Èç¹ûÒª»¨´óÁ¿Ê±¼äµ÷ÓÃWindows® API»òʹÓÃÆäËüÃæÏò¹ý³ÌµÄAPIs£¬¾Í»á·¢ÏÖ£¬ÎªÒ»¸öÈÎÎñÒªµ÷ÓÃÄĸöº¯Êý»ò¹ý³Ì£¬ÊǶàôÈÝÒ׳ö´í¡¢¶àôÄѼǡ£Òò´Ë£¬Í¨¹ý´´½¨Ïà¹Ø¶ÔÏ󣬰ÑÎÊÌâÄ£ÐÍ»¯£¬¶Ô³ÌÐòÔ±À´Ëµ£¬Òª±ÈʹÓÃÒ»³¤ÁеĹý³Ì»òº¯ÊýÒªÓѺõĶࡣ
±àдºÍµ÷ÊÔ´úÂëÊÇÀ§Äѵ쬵«´ó¶àÊý³ÌÐòԱϲ»¶¸ú×ÙÎÊÌ⣬Éè¼ÆÒ²Ò»ÖÖÁé»î·½Ê½½â¾ö£¬È»ºó¡°ÍæÅª¡±´úÂ룬ֱµ½Ò»Çж¼Âú×ãÁ˿ͻ§ÐèÇó¡£ÕâÊÇÓÐȤµÄÈ˵ÄÒ»²¿·Ö£¬µ«²¢²»ÊÇÊÂÇéµÄ½á¾Ö¡£ËùÓгÌÐòÔ±¶¼º¦ÅµÄÒ»¼þÊÂÊÇ£º²»µÃ²»Ñо¿ÆäËûÈ˱àдµÄ´úÂ루»òËûÃÇÔںܾÃÒÔǰ¸Õ¿ªÊ¼±àд´úÂëʱËùдµÄ´úÂ룩£¬²»µÃ²»Éè¼ÆÒ²³ÌÐò¸÷¸ö²¿·ÖÈçºÎ´îÅ䣬ÈçºÎ½øÐÐÐÞ¸ÄÒÔÂú×ãÐÂÐèÇ󡪡ªËùÓÐÕâЩ¶¼±ØÐë²»ÄÜÒýÆðÒâÏë²»µ½µÄºó¹û¡£²»ÐÒµÄÊÇ£¬ÔÚ´ó¶àÊýϵͳÉúÃüÖÜÆÚÖУ¬Î¬»¤´úÂëËùÏûºÄ³ÌÐòÔ±µÄʱ¼ä£¬±È´´½¨ÕâЩ´úÂëµÄʱ¼ä»¹Òª¶à£¬Õâ¾ÍÊÇÕâЩϵͳµÄ½á¾Ö¡£
ͨ¹ýÇå³þµØ·ÖÀ뱩¶µÄ¹«ÓÐÀàÊôÐÔ¡¢·½·¨ºÍʼþÓëÀà³ÉÔ±µÄÒþ²ØÊµÏÖ£¬ÔÚ¶ÔÏóÖзâ×°¹¦ÄܾÍÖ§³Ö½øÐÐÐ޸ġ£Ö»Òª¹«ÓнӿÚÊܵ½±£»¤£¬Ë½ÓÐʵÏ־ͿÉÒÔ°²È«ÊµÏÖ£¬Õâ¾ÍÊÇÄ¿±ê¡£ÏÂÃæ½«Ñо¿È·±£Õâ¸öÄ¿±êʵÏֵķ½Ê½¡£
¼Ì³ÐÓë½Ó¿Ú
³ýÁËͨ¹ýÔÚ¶ÔÏóµÄ·½·¨ºÍÊôÐÔÖзâ×°¹¦ÄÜ£¬Ê¹¸´ÔÓϵͳÒ×ÓÚ´´½¨ºÍÐÞ¸ÄÍ⣬OOP»¹Ö§³ÖÀà¼Ì³ÐºÍ½Ó¿ÚʵÏÖ£¬Í¨¹ýÕâÖÖ·½Ê½£¬ÐÂÀà¾ÍÄܰ²È«µØ¼ÓÈëµ½ÏÖÓÐϵͳÖжø²»±ØÐÞ¸ÄÏÖÓдúÂ롣ͨ³£½«ÕâÁ½ÖÖ·½·¨±È×÷×¼±¸±ä»¯£¬Ñо¿Ã¿ÖÖ·½·¨ºÎʱÊǺÏÊʵ쬲¢ÌÖÂÛµÚÈýÖÖ·½·¨¡ª¡ª¶ÔÏó×éºÏ£¬´Ë·½Ãæ¾³£ÊÇ×îºÃµÄÑ¡Ôñ¡£
¼Ì³Ð²ã´Î
ÔÚËùÓдæÔÚÓÚVisual Basic .NETÖÐOOP¼¼ÊõÖУ¬¼Ì³Ð¶ÔÀ´×ÔVisual Basic 6.0µÄ³ÌÐòÔ±À´ËµÊÇ×î²»ÊìϤµÄ£¬ÒòΪÔÚVisual Basic 6.0Öв»´æÔڼ̳С£ÉõÖÁÊÇVisual Basic 6.0³ÌÐòÔ±ÀÖÓÚʹÓõķÇVisual Basic ¶ÔÏóÄ£ÐÍ£¬ÈçADO»òOffice¿â£¬Ò²ºÜÉÙÐèÒªÀí½â¼Ì³Ð¡£
ͨ¹ý¼Ì³Ð¿ÉÒÔ´´½¨ÐÂÀ࣬ËüÊÇÏÖÓУ¨»ù£©ÀàµÄ±äÌ壬²¢ÇÒÔÚÈκÎ×î³õµ÷ÓûùÀàµÄÇé¿öÖпÉÒÔÓÃм̳ÐÀàÌæ»»¡£ÀýÈ磬ÓÐÒ»¸öÃûΪSalesOrderµÄÀ࣬´ÓÕâ¸öÀàÖÐÅÉÉúÒ»¸öÃûΪSalesOrderµÄÀࣺ
Public Class WebSalesOrder
Inherits SalesOrder
ÏÖÔÚÈκÎʹÓÃSalesOrderÀàÐͶÔÏóµÄ·½·¨£¬¶¼½«±£³Ö²»±ä£¬²¢ÇÒÒ²ÄÜ´¦ÀíWebSalesOrder¶ÔÏó¡£Èç¹ûSalesOrderÓÐÒ»¸öConfirm·½·¨£¬ÄÇô¾Í¿ÉÒÔÈ·±£WebSalesOrder ÀàÒ²ÓÐÒ»¸öConfirm·½·¨¡£µ«Èç¹ûÔÚSalesOrderÀàÖÐConfirm·½·¨±»±ê¼ÇΪ¿ÉÖØÔØµÄ£¬ÄÇô¾Í¿ÉÒÔÔÚWebSalesOrderÀàÖд´½¨ÐµÄConfirm·½·¨À´ÖØÔØÔÓз½·¨£º
Public Overrides Sub Confirm
¿ÉÄÜÔʼConfirm·½·¨Ïò¿Í»§·¢ËÍ´«Õ棬¶øWebSalesOrder ÀàÖеÄConfirm·½·¨Ê¹Óõç×ÓÓʼþ¡£ÖØÒªµÄÊÇ£¬Ò»¸ö×î³õ±»ÉèÖÃΪ¿ÉÒÔ½ÓÊÜSalesOrderÀàÐͶÔÏóµÄ·½·¨£¬ÏÖÔÚÈç¹ûÏòËü´«µÝWebSalesOrder¶ÔÏó£¬ÄÇô´Ë·½·¨Ò²ÄÜÕý³£ÔËÐУ¬²¢ÇҸ÷½·¨µ÷ÓöÔÏóµÄConfirm·½·¨ºó£¬¿Í»§½«ÊÕµ½µç×ÓÓʼþ¶ø²»ÊÇ´«Õæ¡£¾É´úÂë²»ÐèÒª×öÈκÎÐ޸ľͿÉÒÔµ÷ÓÃдúÂë¡£
ÁíÒ»·½Ã棬¼ÙÉèÓÐÒ»¸öTotal£¬¶ÔÁ½¸öÀàÀ´ËµÆäÔËÐÐÇé¿öÍêÈ«Ïàͬ¡£ÅÉÉúÀàWebSalesOrder²»ÐèÒª¶ÔÕâ¸ö·½·¨×÷ÈκÎÐ޸ġª¡ªËüµÄʵÏÖ½«×Ô¶¯´Ó»ùÀà¼Ì³Ð£¬²¢ÇÒ¿ÉÒÔµ÷ÓÃÈκÎWebSalesOrder¶ÔÏóµÄTotal·½·¨£¬Ê¹´Ë¶ÔÏóµÄÐÐΪ¾ÍÏóSalesOrder¶ÔÏóÒ»Ñù¡£
¶à̬ÐÔ
¶à̬ÐÔ£¬»ò¿ÉÌæ´úÐÔ£¬ÊǼ̳ÐÊÇÃ÷ÏÔµÄÒ»¸öÓŵ㣺²»ÂÛºÎʱ´´½¨ÁËÅÉÉúÀà¶ÔÏó£¬ÔÚʹÓûùÀà¶ÔÏóµÄµØ·½¶¼¿ÉÒÔʹÓôËÅÉÉúÀà¶ÔÏó¡£WebSalesOrder¶ÔÏó "is a" SalesOrder¶ÔÏó£¬WebSalesOrder¶ÔÏó±ØÐëÄÜʵÏÖSalesOrder¶ÔÏóµÄËùÓй¦ÄÜ£¬¼´Ê¹ÊÇËüÒÔ×Ô¼º¶ÀÌØµÄ·½Ê½¡£
¶à̬ÐԺܶàOOPÓŵãµÄ¹Ø¼üÒòËØ£¬ÔÚ±¾ÎĺóÃæ¿ÉÒÔ¿´µ½£¬Ëü²»½ö´æÔÚÓڼ̳ÐÖУ¬»¹´æÔÚÓÚ½Ó¿ÚÖС£ÀûÓöà̬ÐÔ£¬²»Í¬ÀàÐ͵ĶÔÏó¾Í¿ÉÒÔ´¦Àí½»»¥Ê±Ê¹ÓõÄÒ»×éͨÓÃÏûÏ¢£¬²¢ÇÒÊÇÒÔËüÃǸ÷×Եķ½Ê½½øÐС£
¶©µ¥È·ÈÏ´úÂë²»ÐèÒªÖªµÀÈçºÎÖ´ÐÐÈ·ÈÏ£¬Ò²²»ÐèÒªÖªµÀ±»È·È϶©µ¥µÄÀàÐÍ¡£ËüÖ»¹ØÐÄËüÊÇ·ñÄܹ»µ÷ÓÃËù´¦ÀíµÄ¶©µ¥¶ÔÏóµÄConfirm·½·¨£¬ËüÒªÒÀÀµ´Ë¶ÔÏó´¦ÀíÈ·ÈÏϸ½Ú£º
Public Sub ProcessOrder(order As SalesOrder)
order.Confirm
ÔÚµ÷ÓÃProcessOrder¹ý³Ìʱ£¬ÐèÒªÏòËü´«µÝSalesOrder»òWebSalesOrder¶ÔÏ󣬴«µÝÈκÎÒ»¸ö¶ÔÏó³ÌÐò¶¼ÄÜÔËÐС£
Ðé·½·¨ºÍÊôÐÔ
Ö»ÓÐÅÉÉúÀàÖØÔØ»ùÀà·½·¨Ê±²ÅÓõ½ÐéÄ⣬ÐéÄâ¿ÉÒÔÊǼ̳ÐÖÐ×î¾ßÉñÃØÐԵĸÅÊö¡£ÆäÉñÃØÐÔÔÚÓÚ.NET ÔËÐÐʱ×Ô¶¯ÕÒµ½²¢ÔËÐб»µ÷Ó÷½·¨»òÊôÐÔµÄ×îÌØÊâʵÏÖ¡£
ÀýÈ磬µ÷ÓÃÉÏÃæÊ¾ÀýÖеÄorder.Confirm·½·¨½«»áµ÷ÓÃWebSalesOrderÀàµÄConfirm·½·¨£¬´Ë´¦SalesOrder.Confirm·½·¨±»ÖØÔØÁË¡£È»¶ø£¬µ÷ÓÃorder.Total·½·¨Ôò»áµ÷ÓÃSalesOrderÀàµÄTotal·½·¨£¬ÒòΪÔÚWebSalesOrderÀàÖÐûÓд´½¨×¨ÓеÄTotal·½·¨¡£
³éÏóÀàºÍ·½·¨
³éÏóÊǰüº¬ÁËÖÁÉÙÒ»¸ö±ØÐë±»ÖØÔØµÄ·½·¨»òÊôÐÔµÄÀà¡£ÀýÈ磬´´½¨ÁËÒ»¸öûÓÐʵÏÖ¶©µ¥È·ÈϵÄSalesOrderÀà¡£ÒòΪ²»Í¬ÀàÐ͵Ķ©µ¥±ØÐëÒÔ²»Í¬µÄ·½Ê½È·ÈÏ£¬ÕâÑù¾ÍÒª´ÓSalesOrderÀàÅÉÉúÀà²¢ÖØÔØConfirm·½·¨£¬ÌṩËü×Ô¼ºµÄʵÏÖ¡£
ÕâÒâζ×ÅÓÀÔ¶²»ÄÜ´´½¨SalesOrder¶ÔÏó¡£Ïà·´£¬Ö»ÄÜʹÓÃÅÉÉúÀà´´½¨¶ÔÏó£¬Ìî³äÈçºÎÖ´Ðж©µ¥µÄϸ½Ú¡£ÓÉÓÚÕâ¸öÔÒòSalesOrderÀཫ±»±ê¼ÇΪMustInherit£º
Public MustInherit Class SalesOrder
Public MustOverride Sub Confirm()
Public Sub Total()
'¼ÆËã×ÜÊýµÄ´úÂë
End Sub
Èç¹û±ØÐëÖØÔØËùÓÐÀà³ÉÔ±£¬ÄÇôÕâ¸öÀà¾Í±»³ÆÎª´¿³éÏóÀà¡£ÀýÈ磬SalesOrderÀà¿ÉÒÔÖ»°üº¬±ØÐë±»ÅÉÉúÀàÖØÔØµÄ·½·¨ºÍÊôÐÔ¡£µ«Ö»ÒªÓÐÒ»¸ö³ÉÔ±±ØÐë±»ÖØÔØ£¬Õâ¸öÀà¾Í±ØÐëÓÃMustInheritÊôÐÔ±ê¼ÇΪ³éÏóÀà¡£
ÀàÐͼì²éÓëÏòÏÂÔìÐÍ
Èç¹ûÓÐЩ¶©µ¥ÐèҪȷÈÏÓÐЩ¶©µ¥²»ÐèҪȷÈÏ£¬½á¹û»áÔõôÑùÄØ£¿¿ÉÒÔ´´½¨²»°üº¬Confirm·½·¨µÄSalesOrder»ùÀ࣬¶øÖ»ÔÚÐèҪȷÈϵÄÅÉÉúÀàÖÐÔö¼ÓConfirm·½·¨¡£µ«ÕâÑù»á³öÏÖÒ»¸öÎÊÌ⣺ÏÖÔÚÏ£Íû´´½¨Ò»¸ö³ÌÐò´¦ÀíËùÓÐÀàÐ͵Ķ©µ¥¶øÔÚÐèҪʱ²Å½øÐÐÈ·ÈÏ¡£ÈçºÎÖªµÀÄĸö¶©µ¥ÐèҪȷÈÏÄØ£¿
Ϊ´Ë³ÌÐòÌṩһ¸öSalesOrderÀàÐ͵IJÎÊý£¬ÒÔÔÊÐíËùÓдÓSalesOrderÅÉÉúµÄÀàÐͶ¼ÄÜ´«Èë¡£µ«ÕâÑù¾ÍÐèÒªÔÚµ÷ÓÃConfirm·½·¨Ç°¶ÔËùÓеÄÈ·ÈÏÀàÐͽøÐвâÊÔ¡£¶øÇÒ£¬Ò»µ©·¢ÏÖ¶©µ¥ÀàÐÍÊÇ¿ÉÈ·Èϵģ¬ÄÇô¾ÍÐèÒªÏóÏÂÃæÕâÑù´ÓSalesOrderÀࣨ´ËÀàÖв»´æÔÚConfirm·½·¨£©ÏòÏÂÔìÐ͵½ÅÉÉúÀࣺ
Public Sub ProcessOrder(order As SalesOrder)
If TypeOf(order) Is WebSalesOrder Then
CType(order, WebSalesOrder).Confirm
ElseIf TypeOf(order) Is EmailSalesOrder Then
CType(order, EmailSalesOrder).Confirm
' µÈµÈ
ÕâÖÖÀàÐ͵ĴúÂëºÜÄÑά»¤¡£Ã¿´ÎÔÚϵͳÖдÓSalesOrderÅÉÉúÒ»¸öÀàºó£¬±ØÐëÐ޸Ĵ˷½·¨¡£¾É´úÂëÓëдúÂëµÄÕâÖÖñîºÏÕýÊÇËùÒª±ÜÃâµÄ¡£
Õâ¾ÍͬÔڴ˹ý³ÌÖÐʵÏÖ²»Í¬Àà±ðµÄÏúÊÛ¶©µ¥µÄÈ·ÈÏ´úÂëÒ»ÑùÔã¸â
If TypeOf(order) Is WebSalesOrder Then
' Ôڴ˱àдȷÈÏ WebSalesOrderµÄ´úÂë
ElseIf TypeOf(order) Is EmailSalesOrder Then
'Ôڴ˱àдȷÈÏ EmailSalesOrderµÄ´úÂë
' µÈµÈ
ÕâÖÖ·½Ê½¸üΪÔã¸â£ºÃ¿´Î´´½¨ÐÂÀàÐÍʱ¶¼±ØÐëÐ޸Ĵ˳ÌÐò£¬¶øÇÒÿÖÖÏúÊÛ¶ÔÏóÒ²²»ÔÙ×Ô¼º½øÐÐÈ·ÈÏ£¬½á¹ûʹ³ÌÐòÔ±ºÜÄÑÌí¼ÓÐÂÀàÐ͵Ķ©µ¥¡£³ÌÐòÔ±ÈçºÎ²ÅÄÜÖªµÀ£¬ÔÚ´¦ÀíÐÂÀàÐͶ©µ¥Ê±ÄÄЩµØ·½ÐèÒªÌí¼Ó´úÂëÄØ£¿
ÁíÒ»ÖÖ·½·¨ÊÇ´´½¨ÃûΪConfirmableSalesOrderµÄÖмä³éÏóÀàÐÍ£¨´ÓSalesOrderÀàÖÐÅÉÉú£¬´øÓбØÐëÖØÔØµÄ·½·¨Confirm£©¡£È»ºó´ÓConfirmableSalesOrderÖÐÅÉÉúÐèÒª½øÐÐÈ·ÈϵÄÀàÐÍ£¬ÆäËüÀàÐÍÖ±½Ó´ÓSalesOrderÅÉÉú¡£³ÌÐò±ØÐë¼ì²é´«ÈëµÄSalesOrder¶ÔÏóÊÇ·ñÊÇConfirmableSalesOrderÀàÐÍ£¬Èç¹ûÊÇ£¬½«Ê¹ÓøÃÀàÐ͵÷ÓÃConfirm·½·¨¡£
If TypeOf(order) Is ConfirmableSalesOrder Then
CType(order, ConfirmableSalesOrder).Confirm
ҪʹÓÃConfirm·½·¨£¬ÈÔÐèCtypeÔìÐÍת»»¡£²»¹ý£¬Í¨¹ýÐéÄâÐÔ£¬µ÷Óý«×Ô¶¯´«µÝµ½´´½¨¶©µ¥¶ÔÏóµÄÀàÖУ¬²¢ÔËÐÐÔÚ¸ÃÀàÖж¨ÒåµÄConfirm·½·¨¡£
ÎÊÌâ¿´ÉÏÈ¥½â¾öÁË£¬µ«ÕâÖ»ÊÇÁÙʱ½â¾ö·½°¸¡£²Â³öΪʲôÁËÂ𣿼ٶ¨ÏÂÒ»²½Òª´¦ÀíµÄÊÂÇéÊÇ£ºÄ³Ð©ÀàÐ͵Ķ©µ¥ÐèÒªÐÅÓÿ¨¡£ÐèÒªÐÅÓÿ¨µÄ¶©µ¥ÓÐÒ»¾¹ýÁËÈ·ÈÏ£¬¶øÁíһЩûÓС£³öÏÖÎÊÌâÁ˰ɡ£
.NETÖв»´æÔÚ¶àÖØ¼Ì³Ð
¿ÉÒÔ´ÓSalesOrderÖÐÅÉÉúCreditCheckableSalesOrderÀàÐÍ¡£Ò»Ð©¶©µ¥ÀàÐÍ´ÓConfirmableSalesOrderÅÉÉú£¬ÁíһЩ´ÓCreditCheckableSalesOrderÖÐÅÉÉú£¬µ«ÐèҪȷÈÏÓÖÐèÒªÐÅÓÿ¨µÄ¶©µ¥»áÔõôÑùÄØ£¿.NET FrameworkÖжԼ̳еÄÒ»ÖÖÏÞÖÆÊÇÒ»¸öÀàÐÍÖ»ÄÜ´ÓÒ»¸ö»ùÀàÐÍÖÐÅÉÉú¡£
¶©µ¥ÀàÐͲ»ÄܼȴÓConfirmableOrderÅÉÉúÓÖ´ÓCreditCheckableOrderÅÉÉú¡£Õâ¿ÉÄܱ»ÈÏΪÊÇרºáµÄ»ò±»Îóµ¼µÄÏÞÖÆ£¬µ«ÕâÑù×öÓкöàÔÒò¡£ÔÚC++ÖÐÖ§³Ö¶àÖØ¼Ì³Ð¡£È»¶ø£¬ËùÓÐÆäËüÁ÷ÐеÄÃæÏò¶ÔÏóµÄÓïÑÔ£¬°üÀ¨Java£¬¶¼²»ÔÊÐí¶àÖØ¼Ì³Ð¡££¨Ò»Ð©¸ß¼¶ÓïÑÔ£¬ÈçEiffel£¬ÔøÊÔͼÉè¼Æ³ö²»Í¬ÀàÐ͵ĶàÖØ¼Ì³Ð£¬ÓÃÓÚ.NET µÄEiffelÉõÖÁÔÚ΢Èí.NETƽ̨ÉÏÌṩÁ˶àÖØ¼Ì³ÐµÄÑù×Ó¡££©
¶àÖØ¼Ì³Ð×î´óµÄÎÊÌâÊÇ£¬µ±±àÒëÆ÷ÐèÒªÕÒµ½Ðé·½·¨µÄÕýȷʵÏÖʱ£¬»á³öÏÖ²»È·¶¨ÐÔ¡£ÀýÈ磬ÉèÏëHound ºÍ Puppy¶¼´ÓDogÖÐÅÉÉú£¬¶øÓÖBabyBasset´ÓHound ºÍ Puppy¼Ì³Ð£º
ͼ 1. ¶àÖØ¼Ì³ÐµÄÎÊÌâ
¼ÙÉèDogÓÐÒ»¸ö¿ÉÖØÔØµÄBark·½·¨¡£HoundÖØÔØÁËËüʹËüÌýÆðÀ´Ïóźţ¬PuppyÒ²ÖØÔØÁËËüʹËüÌýÆðÀ´Ïó¼â½Ð£¬µ«BabyBassetûÓÐÖØÔØBark¡£Èç¹û´´½¨ÁËBabyBasset¶ÔÏó£¬È»ºóµ÷ÓÃËüµÄ·½·¨£¬½á¹û»áÔõÑùÄØ£¬ÅºÅ»¹ÊǼâ½Ð£¿
.NET FrameworkÒªÇó£¬ÅÉÉúÀàÖ»ÄÜÓÐÒ»¸ö»ùÀ࣬´Ó¶ø×èÖ¹ÁËÕâÖÖÎÊÌâµÄ·¢Éú¡£ÕâÖÖÏÞÖÆÒ²Òâζ×Åÿ¸öÀà×îÖÕ´Óµ¥¸öÔø×æ¸¸±²System.ObjectÀàÅÉÉú¡£
µ¥Â·¾¶Àà¼Ì³ÐÒâζ×Å.NET¶ÔÏóÖÐÒÔ±»System.ObjectÀàÐÍ×÷Ϊ²ÎÊýµÄ·½·¨´¦Àí¡£µ¥Â·¾¶Àà¼Ì³ÐÔÚË鯬ÊÕ¼¯ÖÐÊÇÖÁ¹ØÖØÒªµÄ£¬ÒòΪË鯬ÊÕ¼¯Æ÷ÒªÊͷű»²»¿É·ÃÎʶÔÏóÕ¼ÓõÄÄڴ棬¶øÈç¹ûÊÇÕâÖÖÇé¿ö£¬Ëü¾ÍÄÜ´¦ÀíËùÓÐÀàÐ͵ĶÔÏó¡£
ÔÊÐíËùÓжÔÏó¶¼ÏòÉÏÔìÐÍ£¨upcast£©ÎªÍ¨ÓÃÀàÐÍ£¬Õ¹ÏÖÆäÓŵãµÄÒ»¸ö¸üÊìϤµÄÀý×ÓÊÇʼþ´¦Àí³ÌÐò£º
Public Sub MyEventHandler(By Val sender As _
System.Object, By Val e As System.EventArgs)
Õâ¸ö´¦Àí³ÌÐò¿ÉÒÔÁ¬½Óµ½À´×ÔÈκζÔÏó»ò¶ÔÏóµÄÈÎÒâ×éºÏµÄʼþ£¬ÕâÊÇÒòΪ²ÎÊýsenderÊÇSystem.ObjectÀàÐÍ£¬¶øÈÎÒâ.NET¶ÔÏó¶¼ÄÜ´úÌæËü¡£Èç¹û±ØÒª£¬¿ÉÒÔʹÓÃSystem.Reflection.GetType()ʶ±ðsender¶ÔÏóÊǺÎÖÖÀàÐÍ¡£
Creating and Implementing Interfaces´´½¨ºÍʵÏÖ½Ó¿Ú
¼Ì³ÐµÄÕâÖÖ΢ÃîÐÔÊǷdz£ÓÐȤµÄ£¬µ«¶ÔÓÚÐèҪȷÈϺÍ/»òÐÅÓÿ¨µÄÏúÊÛ¶©µ¥£¬Ó¦ÔõÑù×öÄØ£¿´ð°¸ÊÇʹÓýӿڡ£
ÀàµÄ¶àÖØ¼Ì³ÐÒý·¢µÄÎÊÌâÊÇÓɼ̳ÐÁ´ÖÐͨÓ÷½·¨¼äµÄDZÔÚ³åÍ»ÒýÆðµÄ¡£µ«ÊÇ£¬¶ÔÓÚËù¼Ì³ÐµÄÀàÊÇûÓоßÌåʵÏֵĴ¿³éÏóÀ࣬Çé¿ö»áÈçºÎÄØ£¿ÔÚÕâÖÖÇé¿öÏ£¬¶àÖØ¼Ì³Ð²»»áÒý·¢ÈκÎÎÊÌ⣬ÒòΪûÓоßÌåʵÏÖ£¬Ò²¾Í²»»áÒýÆð³åÍ»¡£Õâ¾ÍÊǽӿÚËùÌṩµÄ¹¦ÄÜ£º¼Ì³ÐÒ»×é·½·¨ºÍÊôÐÔ˵Ã÷£¬µ«²»¹ØÐÄÆä¾ßÌåʵÏÖ£¬Òò´Ë´Ó¶à¸ö½Ó¿ÚÖм̳в»»áÒýÆðÎÊÌâ¡£
ËäÈ»¾³£Ê¹ÓöÌÓï¡°½Ó¿Ú¼Ì³Ð¡±£¬µ«ÕýÈ·µÄÊõÓïÊǽӿÚʵÏÖ¡£Ò»¸ö½Ó¿Ú´ÓÁíÍâÒ»¸ö½Ó¿Ú¼Ì³ÐÊÇ¿ÉÄܵģ¬Òò´ËÄܹ»½«½Ó¿Ú²Ù×Ý·½·¨¼¯À©Õ¹µ½°üº¬ËüËù¼Ì³ÐµÄ½Ó¿ÚµÄ·½·¨¡£È»¶ø£¬ÒªÔÚVisual Basic .NETÀàÖÐʹÓýӿڣ¬¾ÍҪʵÏÖÕâЩ½Ó¿Ú¶ø²»ÊǼ̳ÐËüÃÇ£º
Public Interface IConfirmable
Sub Confirm()
End Interface
Public Class WebSalesOrder()
Inherits SalesOrder
Implements IConfirmable
Public Sub Confirm() Implements IConfirmable.Confirm
' È·ÈÏweb ¶©µ¥µÄ´úÂë
End Sub
' ÁíÒ»¸öWebSalesOrder ´úÂë
End Class
£¨ÔÚC#ÖУ¬Ã°ºÅ±»ÓÃÓÚ±í´ïÀà¼Ì³ÐºÍ½Ó¿ÚʵÏÖ¡£Õâ¿ÉÄܾÍÊÇËüͨ³£ÔÚ½Ó¿ÚÃûǰ¼Óǰ׺¡°I¡±µÄÔÒò¡£Í¨¹ýÕâÖÖ·½Ê½£¬C#³ÌÐòÔ±¾ÍÄÜÈÝÒ×µØÇø·Ö»ùÀàºÍ½Ó¿Ú¡££©
¿ÉÒÔ´´½¨Ò»Ð©ÏúÊÛ¶©µ¥ÀàÐÍ£¬Ò»Ð©ÊµÏÖÁËIConfirmable£¬Ò»Ð©ÊµÏÖÁËICreditCheckable£¬¶ø»¹ÓÐһЩÁ½Õß¶¼ÊµÏÖÁË¡£Òª¼ì²é¶©µ¥ÊÇ·ñÐèҪȷÈÏ£¬ËùʹÓõĴúÂëÓë¼ì²é¶©µ¥ÊÇ·ñÊÇ´ÓÌØ¶¨ÀàÐͼ̳е쬲¢½«ÆäÔìÐÍΪÄÇÖÖÀàÐ͵ĴúÂëÊÇÒ»ÑùµÄ£º
Public Sub ProcessOrder(order As SalesOrder)
If TypeOf(order) Is IConfirmable Then
CType(order, IConfirmable).Confirm
½Ó¿Ú¶à̬ÐÔ
½Ó¿ÚÒ²ÌṩÁËÅÉÉúÀàËù¾ßÓеĶà̬ÐÔÓŵ㡣ÀýÈ磬¿ÉÒÔ½«ÈκÎʵÏÖÁËIconfirmableµÄÀà¶ÔÏ󴫵ݸøÐèÒªIconfirmable²ÎÊýµÄ·½·¨£º
Public Sub ConfirmOrder(order As IConfirmable)
order.Confirm
End Sub
Èç¹ûWebSalesOrder ºÍ EmailSalesOrder¶¼ÊµÏÖÁË£¬ÄÇô¾Í¿ÉÒÔ½«ÈÎÒ»¶ÔÏ󴫵ݸøConfirmOrder·½·¨¡£µ±µ÷ÓÃorder.Confirmʱ£¬ÔÚÊʵ±ÀàÖÐʵÏÖµÄÈ·ÈÏ´úÂ뽫ÔËÐС£¼´Ê¹Ã»Óн«ÀàµÄ·½·¨ÃüÃûΪConfirm£¬µ«Ö»Òª½«Ëü±ê¼ÇΪʵÏÖÁËIConfirmable½Ó¿ÚµÄConfirm·½·¨£¬³ÌÐò¾ÍÄÜÕý³£ÔËÐС£
Public Class WebSalesOrder()
Inherits SalesOrder
Implements IConfirmable
Public Sub ConfirmWebOrder() _
Implements IConfirmable.Confirm
' È·ÈÏWeb¶©µ¥µÄ´úÂë
End Sub
×ÔÓÉÃüÃûÊÇÒ»¸öÓÐÓõÄÌØÐÔ¡£Èç¹ûÀàʵÏÖÁËÁ½¸ö²»Í¬µÄ½Ó¿Ú£¬¶øÇ¡ºÃ½Ó¿ÚÖоßÓÐÏàͬÃû×ֵķ½·¨£¬¾ÍÒªÀûÓÃÕâÖÖÌØÐÔÁË¡£
±È½ÏÀà¼Ì³ÐÓë½Ó¿ÚʵÏÖ
´´½¨ÅÉÉúÀàÓëʵÏÖ½Ó¿Ú¼ä×îÖØÒªµÄ¼¼Êõ²î±ðÊÇ£¬ÅÉÉúÀàÖ»ÄÜ´ÓÒ»¸ö»ùÀà¼Ì³Ð£¬µ«Ò»¸öÀà¿ÉÒÔʵÏÖ¶à¸ö½Ó¿Ú¡£
´ÓÉè¼Æ½Ç¶È½²£¬¼Ì³ÐÊDZí´ïÒ»ÖÖÌØÊâÀàÐ͵ĹØÏµ¡£Èç¹ûWebSalesOrderÊÇÒ»ÖÖÌØÊâÀàÐ͵ÄSalesOrder£¬ÄÇô¾ÍÒª¿¼ÂÇʹÓÃÅÉÉúÀàÁË¡£
È»¶ø£¬ÒªÐ¡ÐÄ£¬µ±Çø·ÖÅÉÉúÀàÓë»ùÀàµÄרÓÐÐÔÒ²ÊÇÆäËüÀàÐèÒªÖ§³ÖµÄÌØÐÔʱ£¬²»ÒªÊ¹Óü̳С£¶ÔÓÚÏòÀàÔö¼ÓÕâÖÖÀàÐ͵ÄÌØÐÔ»òÄÜÁ¦Ê±£¬½Ó¿ÚʵÏÖÌṩÁ˸ü´óµÄÁé»îÐÔ¡£
¼Ì³ÐÓÃÓÚ¹¹½¨¿ò¼Ü
Éè¼ÆÓÐÓõļ̳вã´ÎÐèÒªÏêϸ¹æ»®£¬²¢ÇÒÇå³þÈçºÎʹÓü̳С£Òª°ÑËüµ±×÷ÓоÑéµÄÈí¼þÉè¼ÆÊ¦£¨¶øËûÕýÔÚ´´½¨¿ò¼Ü£¬³ÌÐòÔ±ÒªÀûÓô˿ò¼Ü¹¹½¨ÖÚ¶àÓ¦ÓóÌÐò£©ÐèÒªÍê³ÉµÄÈÎÎñ£¬¶ø²»Êǵ±×÷ÔÚ¼òµ¥µØ¹¹½¨Ìض¨Ó¦ÓóÌÐòʱËùʹÓõÄÕ½ÂÔ¡£
.NET Framework×ÔÉí¾Í°üº¬ÁËÐí¶àÕýÔÚ±»Ê¹Óõļ̳ÐʵÀý£¬²¢ÇÒÐèÒª´´½¨ÅÉÉúÀà²ÅÄÜÖ´Ðкܶàͨ³£µÄ±à³Ì»î¶¯¡£ÀýÈ磬¿ÉÒÔ´ÓApplicationExceptionÀàÅÉÉú×Ô¼º×¨ÓеÄÒì³£À࣬ÒÔ´æ´¢¶¨ÖƵĴíÎóÐÅÏ¢¡£µ±ÊͷŶ¨ÖÆÊ¼þºó£¬Í¨¹ý´ÓEventArgsÅÉÉúÒ»¸ö¶¨ÖÆÀཫÐÅÏ¢·¢Ë͵½Ê¼þ´¦Àí³ÌÐò¡£Òª´´½¨Ìض¨ÀàÐ͵ļ¯ºÏ£¬¿ÉÒÔ´ÓCollectionBaseÀàÖÐÅÉÉú¡£Ã¿´ÎÔÚVisual Studio .NETÖд´½¨Windows´°Ìåʱ£¬¾Í´ÓWindows.Forms.Form»ùÀàÖÐÅÉÉúÁËÒ»¸öÀà¡£
ÄãÓ¦µ±Ï°¹ß´Ó¿ò¼ÜÉè¼ÆÊ¦ÌṩµÄ»ùÀàÖÐÅÉÉúÀ࣬µ«ÔÚ´´½¨×Ô¼ºµÄ»ùÀàʱҪСÐÄ¡£ÒªÈ·±£ÕýÔÚ±í´ïÒ»¸öÇåÎúµÄ²ã´Î£¬²¢ÇÒ·ÖÎö³öÁ˿ͻ§¶Ë³ÌÐòÔ±ÒªÖØÔØµÄÐÐΪ¡£
´´½¨×Ô¼ºµÄ½Ó¿ÚʱҲҪСÐÄ£¬µ«Ê¹ÓýӿڱÈʹÓü̳иü²»ÈÝÒ××ßµ½ËÀ½Ç£¬Òò´ËÔÚ¿ÉÒÔ½øÐÐÑ¡ÔñµÄÇé¿öÏÂÓÅÏÈ¿¼ÂÇËüÃÇ¡£
¶ÔÏó×éºÏ
µ±ÔÚ¿¼ÂÇ´´½¨×Ô¼ºµÄ¼Ì³Ð²ã´Îʱ£¬²»Òª¹ý¶àµØ±»ÖØÓôúÂëµÄºôÉùËùÓ°Ïì¡£ÖØÓÃ×ÔÉí²»ÊÇ´´½¨ÅÉÉúÀàµÄ×ã¹»ÔÒò¡£
ÓëÆäʹÓü̳ÐÔÊÐíжÔÏóʹÓÃÏÖÓжÔÏóµÄ´úÂ룬²»ÈçÀûÓóÆÎª×éºÏ£¬°üÈÝ£¬¾ÛºÏ»ò·â×°µÄ¼¼Êõ¡£ÔÚVisual Basic 6.0ÖÐÄã¿ÉÄÜʹÓùýÕâÖÖ¼¼Êõ£¬µ«ÔÚVisual Basic 6.0Öв¢²»´æÔڼ̳С£
ÀýÈ磬Ҫ´´½¨WebSalesOrderÀ࣬´ËÀàÖØÓÃÁËSalesOrderÀàÖеÄËùÓдúÂ룬²¢Ôö¼ÓÁËһЩдúÂ룬ÄÇô¾ÍÔÚWebSalesOrderÀàÖÐÉùÃ÷²¢´´½¨SalesOrder¶ÔÏóµÄÒ»¸öʵÀý¡£¿ÉÒÔ¹«¿ª±©Â¶ÄÚ²¿SalesOrder¶ÔÏó£¬Ò²¿É½«Æä±£´æÎªË½ÓС£
´úÀí
Èç¹ûSalesOrderÀàÖÐÓÐÒ»¸öTotal·½·¨£¬Í¨¹ý¼òµ¥µØµ÷ÓÃ˽ÓÐSalesOrderʵÀýµÄTotal·½·¨£¬WebSalesOrderÀàÒ²¾ÍÓÐÁËTotal·½·¨¡£½«·½·¨µ÷Ó㨻òÊôÐÔµ÷Óã©´«µÝµ½ÄÚ²¿¶ÔÏóµÄ¼¼Êõͨ³£³ÆÎª´úÀí£¬µ«²»Òª½«ËüÓë.NETÖÐÀûÓôúÀí¶ÔÏó´´½¨»Øµ÷º¯Êý»òʼþ´¦Àí³ÌÐòµÄÓ÷¨»ìÏý¡£¾ÍÏóÔÚVisual Basic 6.0ÖÐÒ»Ñù£¬Í¨¹ýÀûÓÃWithEvents¹Ø¼ü×ÖÉùÃ÷±»°üº¬µÄ¶ÔÏ󣬱»°üº¬¶ÔÏóµÄʼþ¿ÉÒÔ±©Â¶ÔÚ·â×°ÀàÖС£
½«½Ó¿ÚʵÏÖÓë×éºÏ½áºÏÆðÀ´
ʹÓöÔÏó×éºÏÓë´úÀíµÄÖ÷ҪȱµãÊÇ£¬²»ÄÜ×Ô¶¯»ñµÃÏóÅÉÉúÀàÄÇÑùµÄ¶à̬ÐÔ¡£Èç¹ûWebSalesOrder¶ÔÏó¼òµ¥µØ°üº¬ÁËSalesOrder¶ÔÏ󣬶ø²»ÊÇ´ÓÁíÒ»¶ÔÏóÖÐÅÉÉú£¬ÄÇô¾Í²»Äܽ«WebSalesOrder¶ÔÏ󴫵ݵ½ÐèÒªSaleOrderÀàÐÍ×÷Ϊ²ÎÊýµÄ·½·¨¡£
ͨ¹ý´´½¨ISalesOrder½Ó¿Ú£¬¶øWebSalesOrderʵÏִ˽ӿڣ¬¾Í¿ÉÒÔ¿Ë·þÕâ¸öȱµã¡£Ò²¿ÉÒÔΪ±»°üº¬SalesOrder¶ÔÏóµÄ·½·¨ºÍÊôÐÔÌṩ´úÀí¡£»ò£¬Èç¹ûÐèÒª£¬WebSalesOrderÒ²¿ÉÒÔ¶ÀÁ¢µÄʵÏÖ½Ó¿ÚÖеķ½·¨ºÍÊôÐÔ£¬¶ø²»ÊÇ´úÀíµ½SalesOrder¶ÔÏó¡£ÕâÓëÅÉÉúÀàµÄÖØÔØÀàËÆ¡£
½«¶ÔÏó×éºÏÓë´úÀíͬ½Ó¿ÚʵÏÖ½áºÏÆðÀ´£¬¾Í¿ÉÒÔÖØÓôúÂ룬ʵÏÖ¶à̬ÐÔ£¬¶øÎÞÐèÉè¼ÆÁîÈËÍ·Í´µÄ¼Ì³Ð¡£ÓÉÓÚÕâ¸öÔÒò£¬µ±ÐèÒª¶ÔÀà½øÐÐÀ©Õ¹»òÌṩרÓй¦ÄÜʱ£¬ÓÅÏÈ¿¼ÂÇÕâÖÖ·½·¨¡£
ÓëVisual Basic 6.0µÄÇø±ðÊÇʲô?
ÔÚVisual Basic 6.0ÖУ¬Ã¿´Î´´½¨Ò»¸öÀàÄ£¿éʱ£¬¶¼×Ô¶¯´´½¨Ò»¸öͬÃûµÄÀà½Ó¿Ú¡£¿¼ÂÇÏÂÃæµÄVisual Basic 6.0´úÂ룺
' Visual Basic 6.0 ´úÂë
Dim myObject As MyClass
Set myObject = New MyClass
ÔÚÕâ¶Î´úÂëÖУ¬µÚÒ»´ÎʹÓÃMyClassʱ£¬Ö¸ÏòÁ˰üº¬¿Õ·½·¨ºÍÊôÐÔµÄÒþ²Ø½Ó¿Ú£¬µÚ¶þ¸öMyClassÊÇʵÏÖÁËÕâЩ·½·¨ºÍÊôÐԵľßÌåÀà¡£Visual Basic 6.0¶ÔÄãÆÁ±ÎÁ˽ӿڵÄʹÓ㬶ø½Ó¿ÚµÄʹÓöÔÓڵײãµÄCOM¹ÜµÀÊǷdz£ÖØÒªµÄ¡£
Visual Basic 6.0ÖеÄImplements¹Ø¼üÔÊÐíÃ÷ȷʹÓýӿڣ¬²¢ÀûÓôæÔÚÓÚVisual Basic .NETÖлùÓڽӿڵĶà̬ÐÔ¡£È»¶ø£¬ÀàʵÏÖ±ØÐëʹÓúϲ¢Á˽ӿÚÃûµÄÃüÃûת»»£º
' Visual Basic 6.0 IConfirmable ÀàÄ£¿é
Public Sub Confirm()
End Sub
' VB6 WebSalesOrder ÀàÄ£¿é
Implements IConfirmable
Private Function IConfirmable _Confirm()
' ´Ë´¦ÊµÏÖÈ·È϶©µ¥µÄ´úÂë
End Function
ÈκÎÒÔÕâÖÖ·½Ê½ÊµÏÖÁËIConfirmable ½Ó¿ÚµÄVisual Basic 6.0¶ÔÏ󶼿ɴ«µÝ¸øÐèÒªIconfirmableÀàÐÍ×÷Ϊ²ÎÊýµÄ³ÌÐò£¬´Ó¶øÔÚVisual Basic .NETÖÐÖ§³ÖÁ˽ӿÚÌṩµÄͬÖÖÀàÐ͵Ķà̬ÐÔ£º
' Visual Basic 6.0 »ò Visual Basic .NET
Public Sub ConfirmOrder(order As IConfirmable)
order.Confirm
End Sub
ËäÈ»ÔÚVisual Basic .NETÖÐʹÓýӿڵÄÓï·¨¸ü¸´ÔÓ¡¢²»Ò×»ìÏý£¬µ«×î´óµÄ±ä»¯ÊǶԼ̳еÄÖ§³Ö¡£´Ó¾ÉÀàÖÐÅÉÉúÐÂÀ࣬ÀûÓþÉÀàµÄ¹¦ÄÜÔÚVisual Basic 6.0ÖÐÊDz»¿ÉÄܵģ¬Òò´ËûÓÐ°ì·¨ÖØÔØÑ¡ÔñµÄ·½·¨¡£
Ö§³Ö¼Ì³ÐÊÇÒ»¸öºÜÖØÒªµÄ±ä»¯£¬µ«Õâ²¢²»ÊÇÒòΪÆÈÇÐÐèÒª´´½¨»ùÀ࣬²¢´ÓÖÐÅÉÉúÐÂÀà¡£ËüµÄ×î´ó¼ÛÖµÊÇÄܹ»¼Ì³ÐC#¡¢C++»òÆäËü.NETÓïÑÔ³ÌÐòÔ±ËùʹÓõĿò¼ÜÀà¡£Èç¹ûÔÚVisual Basic .NETÖд´½¨ÁË»ùÓڼ̳еĿò¼Ü£¬ÄÇôÆäËü.NET³ÌÐòÔ±¾Í¿ÉÒÔʹÓô˿ò¼Ü¡£Õâ¾ÍʹVisual Basic .NETͬÆäËü.NETλÓÚͬһˮƽ£¬´òÆÆÁ˹ýÈ¥¸ôÀëVisual Basic ³ÌÐòÔ±µÄÆÁÕÏ¡£
С½á
±¾ÎÄѧϰÁËÀà¼Ì³ÐÓë½Ó¿ÚʵÏÖ¼äµÄÇø±ð¡£¼Ì³ÐÖ§³ÖרÓÐÐÔ²»¶ÏÔö¼ÓµÄÀà²ã´Î¿ò¼Ü£¬ËüÃǹ²ÏíһЩ´úÂ룬²¢½øÐÐÁ˶¨ÖÆ¡£½Ó¿ÚÔÊÐí¶à¸ö²»Ïà¹ØµÄÀ๲Ïí¿ÉÔ¤²âµÄ·½·¨ºÍÊôÐÔ¡£½Ó¿ÚºÍ¼Ì³ÐÌṩÁ˶à̬ÐÔ£¬ÕâÑùÒ»°ãÐԵĹý³Ì¾Í¿ÉÒÔʹÓò»Í¬ÀàÐ͵ĶÔÏó¡£»¹Ñ§Ï°ÁËÈçºÎÀûÓöÔÏó×éºÏ¶ø²»ÊǼ̳ÐÖØÓúÍÀ©Õ¹ÊµÏÖ´úÂ룬¶ÔÏó×éºÏÈçºÎÓë½Ó¿Ú½áºÏÆðÀ´Ö§³Ö¶à̬ÐÔ¡£ËùÓÐÕâЩ¼¼Êõ¶¼ÓÃÓÚ´´½¨ºÍÐ޸ĸ´ÔÓµÄÈí¼þϵͳ£¬ÒÔÔö¼Óй¦ÄÜ£¬¶ø×îС»¯Ñо¿ÒÔǰ´úÂëµÄÐèÒª¡£

