search search

search¡¡ Hindisongsfree ¡search¡ Yield ¡¡¡search¡ Www sesearchr Yield hsearch H Yield ndsearch Szh

Free a Www Szh isearchdsearch ¡search Www i Free lsearch Szh ¡¡¡¡search¡¡ Szh ¡search¡ Songs ¡ Yield ¡ Hindisongsfree ¡ Songs ¡ Hindi ¡ Songs ¡ Free ¡ Www ©search

µ¼º½

 
 
 
 
 

ÈÕÖ¾

 
 

c#ÖÐoverride virtual static abstract sealed µÄ×÷Óü°´úÂë·ÖÎö  

2010-03-11 09:28:43|  ·ÖÀࣺ ¡¢C Sharp| |  ±êÇ©£º |×ֺŴóÖÐС ¶©ÔÄ

˵Ã÷1£º

±íʾ¾²Ì¬µÄ¹Ø¼ü×Ö
˵Ã÷´Ë¶ÔÏóÔÚÓ¦ÓÃÖÐÖ»´æÔÚÒ»·Ý

 

˵Ã÷2£º

C# ÊÇÃæÏò¶ÔÏóµÄ³ÌÐòÉè¼ÆÓïÑÔ£¬Ã¿Ò»¸öº¯Êý¶¼ÊôÓÚÒ»¸öÀà¡£

µ±Ò»¸ö·½·¨±»ÉùÃ÷ΪStaticʱ£¬Õâ¸ö·½·¨ÊÇÒ»¸ö¾²Ì¬·½·¨£¬±àÒëÆ÷»áÔÚ±àÒëʱ±£ÁôÕâ¸ö·½·¨µÄʵÏÖ¡£Ò²¾ÍÊÇ˵£¬Õâ¸ö·½·¨ÊôÓÚÀ࣬µ«ÊDz»ÊôÓÚÈκγÉÔ±£¬²»¹ÜÕâ¸öÀàµÄʵÀýÊÇ·ñ´æÔÚ£¬ËüÃǶ¼»á´æÔÚ¡£¾ÍÏñÈë¿Úº¯ÊýStatic void Main£¬ÒòΪËüÊǾ²Ì¬º¯Êý£¬ËùÒÔ¿ÉÒÔÖ±½Ó±»µ÷Óá£

µ±Ò»¸ö·½·¨±»ÉùÃ÷ΪVirtualʱ£¬ËüÊÇÒ»¸öÐéÄâ·½·¨£¬Ö±µ½ÄãʹÓÃClassName variable = new ClassName();ÉùÃ÷Ò»¸öÀàµÄʵÀý֮ǰ£¬Ëü¶¼²»´æÔÚÓÚÕæÊµµÄÄÚ´æ¿Õ¼äÖС£Õâ¸ö¹Ø¼ü×ÖÔÚÀàµÄ¼Ì³ÐÖзdz£³£Óã¬ÓÃÀ´ÌṩÀà·½·¨µÄ¶à̬ÐÔÖ§³Ö¡£

ÀýÈ磬ÓÐÒ»¸öÀàTest£¬TestÀàÓµÓÐÁ½¸ö·½·¨Hello()ºÍgreet()£º
public class test
{}
.....
}
ÀàTestMeÅÉÉú×ÔÀàTest£¬ÄÇôµ±ÄãʹÓÃÈçϵĴúÂ룺
Test a = new TestMe();
´´½¨Ò»¸öTestMeÀàµÄÐÂʵÀýºó£¬¼ÙÈçÄãÊÔͼִÐÐÈçϵĴúÂ룺
a.Hello();
ÄÇô£¬×ÔÈ»¾Í»áÔËÐлùÀàTestµÄHello()·½·¨£¬µ«ÊÇÈç¹ûÄãÏë¸øÓèÅÉÉúÀàTestMeÒ»¸öËü×Ô¼ºµÄHello()·½·¨£¬Äã¾ÍÒªÔÚTestÀàÖн«Hello()·½·¨ÉùÃ÷ΪÐéÄâµÄ:
public virtual void Hello()
{}
È»ºóÔÚÅÉÉúÀàÖÐÒÔoverride¹Ø¼ü×Ö±íʾ¸²¸Ç»ùÀàµÄ·½·¨£º
public class TestMe : Test
{}

....
}
Õâʱµ÷ÓÃa.Hello()£¬¾Í»á³öÏÖ¡°hello from TestMe class!!!¡±×ÖÑù£¬¶ø²»ÊÇ¡°Hello£¬world!¡±ËµÃ÷»ùÀàµÄ·½·¨ÒѾ­±»¸²¸ÇÁË¡£Õâ¾ÍÊǶà̬ÐԵıíÏÖ¡£

´ÓÉÏÃæ²»ÄÑ¿´³ö£¬Ò»¸ö¾²Ì¬µÄ·½·¨ÊÇÕæÊµ´æÔڵ쬶øÒ»¸öÐéÄâ·½·¨¿ÉÒÔ±»ÅÉÉúÀàÖØÐ´£¬Õâ¶þÕßÊdzåÍ»µÄ£¬Æäʵ¶ÔÓÚÒ»¸ö·½·¨£¬C#¹æ¶¨Ö»ÄÜʹÓÃÏÂÃæÕâЩÏÞ¶¨·ûÖеÄÒ»¸ö£º
override virtual static abstract sealed
´ú±íµÄº¬Òå·Ö±ðΪ£º
ÖØÔØº¯Êý¡¢ÐéÄ⺯Êý¡¢¾²Ì¬º¯Êý¡¢³éÏóº¯Êý¡¢Ãܷ⺯Êý£¨²»¿ÉÅÉÉú£©

ÁíÍ⣬C#Öж¨ÒåÒ»¸ö·½·¨µÄÉùÃ÷Ϊ£º

¿É¼ûÐÔ ÀàÐÍ ·µ»ØÖµ ·½·¨Ãû£¨²ÎÊýÁÐ±í£©{}

ÀýÈç
public static void Test(int a){}

ÕâÊÇÒ»¸ö¹«Óеľ²Ì¬º¯Êý£¬º¯ÊýÃûΪTest£¬ÎÞ·µ»ØÖµ£¬ÓÐÒ»¸öÕûÐβÎÊýa£¬×÷ÓÃÊǰÑaµÄÖµÊä³öÔÚÆÁÄ»ÉÏ¡£

 

˵Ã÷3£º

±ÈÈçÓÐÀà
class a
{}
}
ºÍÀà
class b
{}
void function2()
{}
}
Èç¹ûҪʹÓÃfunction1µÄʱºò£¬Ö±½ÓʹÓÃÀàÃûa.function1()¾Í¿ÉÒÔÁË,Èç¹ûҪʹÓÃfunction2()µÄ»°ÐèÒª¶Ôb½øÐй¹½¨Ò»¸ö¶ÔÏó Ò²¾ÍÊÇ£ºb haha = new b(),È»ºóhaha.function2()£¬¿ÉÒÔÕâÑù½øÐÐʹÓã¬
Ò²¾ÍÊÇ˵¶ÔÓÚstaticÐÞÊιýµÄ·½·¨»òÕßÊôÐÔ£¬¶ÔÓÚËùÓеĸÃÀàµÄ¶ÔÏó¶¼Ö»ÓÐÏàͬµÄÒ»¸ö£¬¶øÃ»ÓÐÐÞÊιýµÄÔò±íʾ£¬¶ÔÓÚ²»Í¬µÄ¶ÔÏ󣬻áÓв»Í¬µÄÊôÐÔ£¬±ÈÈ粻ͬµÄÈËÓв»Í¬µÄÃû×Ö£¬Éí¸ßµÈ¡£

˵Ã÷4£º

public static ×îºÃÒ»¸öÈË¿ª³µ
public ¿ÉÒԺܶàÈËÒ»Æð¿ª³µ

 

 

 

===========================

 

 

 

new Óë overrideµÄÇø±ð

 ÒýÓÃAnyTao²©¿ÍÖеÄÒ»¾ä»°:
¸²Ð´£¨override£©ÓëÖØÔØ£¨overload£©£¬ÊdzɾÍ.NETÃæÏò¶ÔÏó¶àÌ¬ÌØÐԵĻù±¾¼¼ÊõÖ®Ò»
ÕýÈçÄ³ÍøÓÑ˵µÄÄÇÒ»¾ä»°:
Override ¸²Ð´ ¾ÍÊǰÑÔ­À´µÄ»»µôÁË
new        Ð嵀 ¾ÍÊÇÁ½¸ö¹²´æ×Å

ʹÓÃoverrideÖØÐ´xx·½·¨,ͨ¹ý¸¸ÀàÒýÓÃÒ»ÑùÖ»ÄÜ¿´µ½ÖØÐ´ºóµÄ·½·¨;
Èç¹ûʹÓÃnewÒþ²Øxx·½·¨,¸¸Àà×ÓÀàÒýÓø÷×Ô¶ÔÓ¦·½·¨;

overrideÖØÐ´Ðé·½·¨,ÄÇô¾ÍֻʣÏÂÖØÐ´ÒÔºóµÄ·½·¨;
newÒþ²Ø»ùÀàµÄ·½·¨,ÄÇô»ùÀàµÄ·½·¨ºÍµ±Ç°ÀàµÄ·½·¨Í¬Ê±´æÔÚÖ»ÊDZ»Òþ²ØÁË;

 

 

ʹÓÃoverrideÐÞÊηûÖ÷ÒªÓÃÀ´Ð޸ķ½·¨¡¢ÊôÐÔ¡¢Ë÷ÒýÆ÷»òʼþ¡£ÖØÐ´»ù·½·¨±ØÐëÓëÖØÐ´·½·¨¾ßÓÐÏàͬµÄÃû³Æ¡£
        ²»ÄÜÖØÐ´·ÇÐé·½·¨»ò¾²Ì¬·½·¨¡£ÖØÐ´»ù·½·¨±ØÐëÊÇÐéÄâµÄ¡¢³éÏóµÄ»òÖØÐ´µÄ¡£
       ÖØÐ´ÉùÃ÷²»Äܸü¸ÄÐé·½·¨µÄ¿É·ÃÎÊÐÔ¡£ÖØÐ´·½·¨ºÍÐé·½·¨±ØÐë¾ßÓÐÏàͬµÄ·ÃÎʼ¶ÐÞÊηû¡£ÀýÈ磺Ðé·½·¨ÎªpublicµÄ£¬ÖØÐ·½·¨Ò²±ØÐëÊÇpublicµÄ¡£
        ²»ÄÜʹÓÃÏÂÁÐÐÞÊηûÐÞ¸ÄÖØÐ´·½·¨£º
        new        static        virtual        abstract

        ÖØÐ´ÊôÐÔÉùÃ÷±ØÐëָдÓë¼Ì³ÐÊôÐÔÍêÈ«ÏàͬµÄ·ÃÎÊÐÞÊηû¡¢ÀàÐͺÍÃû³Æ£¬²¢ÇÒÖØÐ´ÊôÐÔ±ØÐëÊÇÐéÄâµÄ¡¢³éÏóµÄ»òÊÇÖØÐ´µÄ¡£

ÒªÇ󣺣¨ÈýÏàͬ£©
1¡¢·½·¨Ãû³ÆÏàͬ
2¡¢²ÎÊýÁбíÏàͬ
3¡¢·µ»ØÖµÀàÐÍÏàͬ
Ò»¾ä»°£¬Ö»ÐèÒªÖØÐÂд·½·¨ÄÚ²¿µÄÄÚÈÝ£¡

,override¿ÉÒÔ¸²¸Ç»ùÀàµÄ·½·¨,ÈûùÀàµÄ·½·¨ÒÔ×ÓÀàµÄÄÚÈÝʵÏÖ,¶ønew²»ÓÃÀ´¸²¸Ç»ùÀàµÄ·½·¨,¶øÊÇȫж¨ÒåÒ»¸ö×ÓÀàµÄ·½·¨,Õâ¸ö·½·¨Ö»ÊôÓÚ×ÓÀà,Óë»ùÀàµÄ·½·¨ÎÞ¹Ø,Ö»ÊÇÃû×ÖÉÏÏàͬ¶øÒÑ

 


 

ÏÈ¿´abstractºÍoverrideʹÓ÷½·¨

abstract class Base

    {}

        public virtual void outwork()

        {}

        

        Public abstract void Pay();       //ÉùÃ÷³éÏó·½·¨£¬±ØÐëÒª±»×ÓÀànew »ò override;Ö»Óе±ÀàÊÇabstractʱ²Å¿ÉÒÔÉùÃ÷abstract·½·¨    

    }

    class Employee : Base

    {}

        public override void outwork()   //¸²Ð´³éÏó·½·¨£¨Ò»¶¨ÒªÔÚ×ÓÀาд¸¸ÀàµÄ³éÏó·½·¨£©

        {}

}               

//²âÊÔ´úÂë

        

Code
          //µÚÒ»ÖÖÇé¿ö
            Employee emp = new Employee();

            emp.work();              
//×ÓÀࣨnew£©--¿ªÊ¼¹¤×÷