ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

бàC#ÃæÊÔÌâ(Ò»)
2014-11-24 01:37:50 ¡¾´ó ÖРС¡¿ ä¯ÀÀ:398´Î
Tags£ºÐ±à ÊÔÌâ

2. constºÍreadonlyÓÐʲôÇø±ð£¿


´ð£ºconst¿ÉÒÔÓÃÓÚÀàµÄ³ÉÔ±³£Á¿ºÍ¾Ö²¿³£Á¿£¬±ØÐëÔÚÉùÃ÷ʱ¸³Öµ£¬Ö®ºó²»¿ÉÒÔ¶Ô³£Á¿½øÐи³Öµ¡£¶øreadonlyÖ»ÄÜÓÃÓÚÀàµÄ³ÉÔ±±äÁ¿²»ÄÜÓÃÓÚ¾Ö²¿±äÁ¿£¬ÔÚÉùÃ÷ʱ¿ÉÒÔ²»¸³Öµ£¬³ýÁËÔÚ¹¹Ô캯ÊýÖпÉÒÔÔٴθ³ÖµÍ⣬ÆäËüµÄµØ·½ºÍconstÒ»ÑùÒ²²»Äܸ³Öµ¡£


5. ½Ó¿ÚºÍ³éÏóÀàÓÐʲôÇø±ð£¿ÄãÑ¡ÔñʹÓýӿںͳéÏóÀàµÄÒÀ¾ÝÊÇʲô£¿´ð


´ð£ºÇø±ðÈçÏÂ


£¨1£© ³éÏóÀà¿ÉÒÔÓгéÏó³ÉÔ±£¨ÎÞ¾ßÌåʵÏÖ£©£¬Ò²¿ÉÒÔÓзdzéÏó³ÉÔ±£¨ÓоßÌåʵÏÖ£©£»½Ó¿ÚÖ»ÓгéÏó³ÉÔ±¡£


£¨2£© Ò»¸öÀ಻ÄÜͬʱ¼Ì³Ð¶à¸ö³éÏóÀ࣬һ¸öÀà¿ÉÒÔͬʱʵÏÖ¶à¸ö½Ó¿Ú¡£


Èç¹û¶à¸ö×ÓÀàÖÐÓкܶà´úÂëÊÇÖظ´µÄ£¬Õâʱ²ÉÓóéÏóÀ࣬ÒòΪ¿ÉÒÔ½«ÕâЩ´úÂë·Åµ½³éÏóÀàµÄ·Ç³éÏó·½·¨ÖУ¬ÕâÑù¿ÉÒÔ´ïµ½´úÂ븴Óᣵ±ÊµÏÖ¶à¸ö½Ó¿ÚʱÒòΪ³éÏóÀ಻֧³Ö£¬Ö»ÄÜʹÓýӿڡ£


6. structºÍclassÓÐʲôÇø±ð


´ð£ºÁ½Õ߶¼¿ÉÒÔÓгÉÔ±±äÁ¿¡¢ÊôÐÔ¡¢Ë÷ÒýÆ÷¡¢Ê¼þ¡¢º¯Êý¡¢¹¹Ô캯Êý£¬Ö÷ÒªÇø±ðÈçÏ£º


Çø±ðµã ½á¹¹ Àà


ÀàÐÍ ÖµÀàÐÍ ÒýÓÃÀàÐÍ


³ÉÔ±±äÁ¿ ÔÚÉùÃ÷ʱ²»Äܸ³Öµ ¿ÉÒÔ¸³ÖµÒ²¿ÉÒÔ²»¸³Öµ


¹¹Ô캯Êý ¿ÉÒÔ²»Ð´£¬ÏµÍ³ÌṩĬÈϹ¹Ô캯Êý£¬Ä¬ÈϹ¹Ô캯ÊýÖлὫËùÓгÉÔ±ÖµÉèΪ0£¬Èç¹ûдÁ˹¹Ô캯ÊýÔò¹¹Ô캯Êý±ØÐëÓвÎÊý£¬ÇÒÔÚ¹¹Ô캯ÊýÖбØÐëΪÿһ¸ö³ÉÔ±¸³Öµ¡£ ¿ÉÒÔ²»Ð´£¬ÏµÍ³ÌṩĬÈϹ¹Ô캯Êý£¬Ð´ÁËҲûÓнṹÖеÄÏÞÖÆ¡£


Îö¹¹º¯Êý ²»ÄÜÓÐÎö¹¹º¯Êý ¿ÉÒÔÓÐÎö¹¹º¯Êý


¼Ì³ÐÐÔ ×Ô¶¨ÒåµÄ½á¹¹²»ÄÜ´ÓÀà¼Ì³Ð£¬µ«¿ÉÒÔʵÏÖ½Ó¿Ú£¬½á¹¹¶¼ÊÇÃÜ·â(sealed)£¬²»Äܴӽṹ¼Ì³Ð ÀàûÓÐÏÞÖÆ


7. tryºóÃæÒ»¸öfinally£¬tryÖÐÓÐÒ»¸öreturn£¬ÄÇôfinallyÖеĴúÂë»á²»»áÔËÐУ¿Èç¹ûÔËÐУ¬ÊÇÔÚreturnºó»¹ÊÇreturnÇ°¡£


´ð£º»áÔËÐУ¬²¢ÇÒÔÚreturn ºóÔËÐС£


8. ²úÉúÒ»¸öintÊý×飬³¤¶ÈΪ100£¬²¢ÏòÆäÖÐËæ»ú²åÈë1-100£¬²¢ÇÒ²»ÄÜÖظ´¡£


´ð£º¸ÃÌâ½âÌâ˼·Óкܶ࣬Ö÷ÒªÊÇ¿´ÔËÐÐЧÂÊÈçºÎ£¬ÏÂÃæÌṩһÖÖ·½·¨¡£


int[] array = new int[100];


int temp[] = new int[100];


for (int i = 0; i < 100; i++)


{


temp[i]=i+1;


}


Random rand = new Random();


for (int i = 0; i < 100; i++)


{


int index = rand.Next(100-i-1);


array[i] = temp[index];


temp[index]=temp[100-i-1];


}


9. C#ÖÐҪʹһ¸öÀàÖ§³Öforeach±éÀú£¬ÊµÏÖ¹ý³ÌÔõÑù£¿


´ð£º±ØÐëʵÏÖIEnumerable,IEnumeratorÕâÁ½¸ö½Ó¿Ú£¬ÈçÏ£º


public class MyList : IEnumerable,IEnumerator


{


private int position = -1;


string[] array = new string[4];


public MyList()


{


array[0] = "a";


array[1] = "b";


array[2] = "c";


array[3] = "d";


}


#region IEnumerable ³ÉÔ±


//ÿ´ÎʹÓÃforeachʱ¶¼»áµ÷ÓÃËüµÃµ½Ò»¸öö¾ÙÆ÷


public IEnumerator GetEnumerator()


{


Reset();


return (this as IEnumerator);


}


#endregion


#region IEnumerator ³ÉÔ±


//±éÀúʱͨ¹ýÕâ¸öÊôÐԵõ½Öµ


public object Current


{


get { return array[position]; }


}


//·ÃÎÊÏÂÒ»¸öÔªËØʱʹÓÃMoveNextÒƶ¯Î»ÖÃ


public bool MoveNext()


{


if (position < array.Length-1)


{


position++;


return true;


}


else


return false;


}


//±éÀúǰҪʹλÖùéλ


public void Reset()


{


position = -1;


}


#endregion


}


ÒÔϲ»ÓÃforeach±éÀú¼¯ºÏ


MyList list=new MyList();


While(list.MoveNext())


{


Object o=list.Current;


}


10. ÒÔϳÌÐòÓÐʲô´í£¿


public class TestClass


{


private int count;


private static int y;


public static void setvalue £¨£©


{


count=1;


y=1;


}


}


´ð£ºÔÚ¾²Ì¬º¯ÊýÖÐÖ»ÄÜ·ÃÎʾ²Ì¬³ÉÔ±±äÁ¿;ÒÔÉÏ´úÂë·ÃÎÊÁËʵÀý³ÉÔ±¡£


11. netÖÐʲôÀ಻Äܱ»¼Ì³Ð£¿


´ð£ºÈç¹ûÔÚÀàÇ°¼ÓÉÏsealed¹Ø¼ü×Ö£¬Ôò±íʾ¸ÃÀàΪÃÜ·âÀ࣬ÃÜ·âÀ಻Äܱ»¼Ì³Ð¡£


sealed ³ýÁË¿ÉÒÔÓ¦ÓÃÓÚÀàÍ⣬»¹¿ÉÒÔÓ¦ÓÃÓÚʵÀý·½·¨ºÍÊôÐÔ¡£ÃÜ·â·½·¨»áÖØд»ùÀàÖеķ½·¨£¬µ«Æä±¾Éí²»ÄÜÔÚÈκÎÅÉÉúÀàÖнøÒ»²½ÖØд¡£µ±Ó¦ÓÃÓÚ·½·¨»òÊôÐÔʱ£¬sealed ÐÞÊηû±ØÐëʼÖÕÓëoverrideÒ»ÆðʹÓá£È磺


//ÏÂÃæÕâ¸ösealedʹÓÃÕýÈ·£¬±íʾ¸ÃÀ಻Äܼ̳Ð


public sealed class Test


{


private int myVar;


//ÏÂÃæÕâ¸ösealed´íÎ󣬱àÒë²»»áͨ¹ý£¬ÒòΪsealed±ØÐëºÍoverrideÒ»ÆðʹÓÃ


public sealed int MyProperty


{


get { return myVar; }


set { myVar = value; }


}


//ÏÂÃæÕâ¸ösealedʹÓÃÕýÈ·£¬±íʾÈç¹û¸ÃÀ಻ÊÇÃÜ·âÀ࣬


//ÄÇôÔÚÅÉÉúÀàÖÐÒ²²»¿ÉÒÔÖØд¸Ã·½·¨


public sealed override string ToString()


{


return base.ToString();


}


}


12. is ºÍas ÓÐʲôÇø±ð£¿


´ð£ºisÓÃÀ´ÅжÏÒ»¸öʵÀýÊÇ·ñÊôÓÚij¸öÀà¡£È磺


Dog d=new Dog();


If(d is Dog)


{


Console.WriteLine(¡°dÊÇÒ»Ö»¹·¡±);


}


ÒÔÉÏÓï¾äConsole.WriteLine(¡°dÊÇÒ»Ö»¹·¡±);»áÔËÐУ¬ÒòΪd is Dog·µ»Øtrue,Èç¹ûDog´ÓAnimalÀà¼Ì³Ð²¢ÊµÏÖÁËIPet½Ó¿Ú,Ôòd is AnimalºÍd is IPet¶¼»á·µ»Øtrue;


asÓÃÓÚÔÚ¼æÈݵÄÒýÓÃÀàÐÍÖ®¼äÖ´ÐÐת»»,Èç¹ûת»»Ê§°ÜÔò·µ»Ønull,ËüµÈ¼ÛÓÚÈçÏÂÓï¾ä£º


expression is type (type)expression : (type)null


13. netÖк¯Êý´«µÝ²ÎÊýÓÐÄÇЩ·½Ê½£¿ÓÐʲôÇø±ð£¿


´ð£º´«ÖµºÍ´«ÒýÓ㬴«ÒýÓÃÓÖÁ½ÖÖ·½Ê½£¬refºÍout£¬refÒªÇó±äÁ¿ÔÚ´«²ÎÇ°¸³Öµ£¬out¿ÉÒÔ²»¸³Öµ¡£´«ÒýÓñØÐëÊÇÒ»¸öµØÖ·£¬´«ÖµÊÇÖ¸½«Õ»ÖеÄÖµ¿½±´µ½º¯ÊýµÄ²ÎÊý£¬´«ÒýÓñíʾ´«ÈëµÄ±äÁ¿ºÍ½ÓÊÕ²ÎÊýÊÇͬһ¸ö±äÁ¿


public class Test


{


public int myVar;


public int MyProperty


{


get { return myVar; }


set { myVar = value; }


}


}


ÒÔÉÏÕâ¸öÀàÖÐÓÐ×ֶκÍÊôÐÔ


private void F(ref int i)


{


i = 100;


}


ÓÐÒ»¸ö·½·¨´«µÝÒýÓ㬵÷Ó÷½Ê½ÈçÏ£º


Test t = new Test();


F(ref t. MyProperty);


ÒÔÉÏ´úÂë±àÒë²»ÄÜͨ¹ý£¬ÒòΪÊôÐÔ²»ÊDZäÁ¿£¬ÆäʵÖÊÊǺ¯Êý£¬ÈçÏÂÔò¿Éͨ¹ý


Test t = new Test();


F(ref t. myVar);


ÒòΪ×Ö¶ÎÊDZäÁ¿


14. Ò»ÁÐÊýµÄ¹æÔòÈçÏÂ: 1¡¢1¡¢2¡¢3¡¢5¡¢8¡¢13¡¢21¡¢34...... ÇóµÚ30λÊýÊǶàÉÙ£¬ ÓõݹéË㷨ʵÏÖ¡£


´ð£ºpublic class MainClass


{


public static void Main()


{


Console.WriteLine(Foo(30));


}


public static int Foo(int i)


{


i

Ê×Ò³ ÉÏÒ»Ò³ 1 2 3 4 5 6 ÏÂÒ»Ò³ βҳ 1/6/6
¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
ÉÏһƪ£ºInterview questions for C# deve.. ÏÂһƪ£ºC#ÃæÊÔ³£¼ûÎÊÌâ

×îÐÂÎÄÕÂ

ÈÈÃÅÎÄÕÂ

Hot ÎÄÕÂ

Python

C ÓïÑÔ

C++»ù´¡

´óÊý¾Ý»ù´¡

linux±à³Ì»ù´¡

C/C++ÃæÊÔÌâÄ¿