Nangungunang 50 C # Mga Katanungan at Sagot sa Pakikipanayam para sa 2021

Ang C # ay isang pangkalahatang layunin na wika ng programa na sumasaklaw sa iba't ibang mga disiplina tulad ng programa na nakatuon sa object, pag-type ng static, programming na nakatuon sa bahagi, malakas na pag-type, atbp. Ang C # ay malawakang ginagamit sa balangkas ng ASP.NET para sa paglikha ng mga website, web application at laro. Mayroong malawak na mga pagkakataon para sa C # programa sa buong mundo. Kung nag-iisip kang bumuo ng isang karera sa C # programa, kailangan mong pumutok sa isang pakikipanayam kung saan tatanungin ka ng maraming C # pangunahing mga katanungan at sagot sa panayam tulad ng nakalista sa ibaba.

Ito ay isang na-curate na listahan ng mga katanungan at sagot sa panayam sa C #, na posibleng tanungin sa panahon ng pakikipanayam. Ang mga kandidato ay malamang na tatanungin sa pangunahing mga katanungan sa panayam sa C # upang maisulong ang antas C # .NET na mga katanungan sa pakikipanayam depende sa kanilang karanasan at iba`t ibang mga kadahilanan. Saklaw ng listahang ito ang lahat ng mga katanungan sa C # para sa mga fresher pati na rin ang mga katanungan sa C # at pakikipanayam para sa mga may karanasan sa mga kandidato sa antas.

C # Mga Panayam at Sagot sa Panayam sa PDF file: Mag-download Dito!

Madalas Itanong C # Panayam Mga Tanong at Sagot para sa Mga Fresher at Karanasan

Narito ang ilang mga madalas na tinatanong na mga katanungan sa pakikipanayam para sa mga fresher pati na rin ang mga bihasang kandidato ng mga developer ng C # upang makakuha ng tamang trabaho.

Saklaw namin ang 50+ pangunahing kaalaman upang isulong ang madalas itanong na mga katanungan at sagot sa panayam sa C #

1. Ano ang C #?

Ang C # ay isang oriented na object, safe-type, at pinamamahalaang wika na naipon ng .Net framework upang makabuo ng Microsoft Intermediate Language.

2. Ipaliwanag ang mga uri ng komento sa C # na may mga halimbawa

Isang linya

Halimbawa:

 //This is a single line comment 

ii. Maramihang linya (/ * * /)

Halimbawa:

 /*This is a multiple line comment We are in line 2 Last line of comment*/ 

iii. Mga Komento sa XML (///).

Hal:

 /// summary; /// Set error message for multilingual language. /// summary 

3. Maaari bang maisagawa ang maraming mga bloke ng catch?

Hindi, Maramihang mga bloke ng catch ng katulad na uri ay hindi maisakatuparan. Kapag naipatupad ang wastong catch code, ang kontrol ay inililipat sa wakas na bloke, at pagkatapos ang code na sumusunod sa wakas na block ay naisakatuparan.

4. Ano ang pagkakaiba sa pagitan ng publiko, static, at walang bisa?

Ipinahayag ng publiko ang mga variable o pamamaraan na maa-access saanman sa application. Ang mga static na idineklarang variable o pamamaraan ay pandaigdigang naa-access nang hindi lumilikha ng isang halimbawa ng klase. Ang static member ay bilang default na hindi sa buong mundo maa-access depende ito sa uri ng pag-access na binago ang ginamit. Iniimbak ng tagatala ang address ng pamamaraan bilang entry point at ginagamit ang impormasyong ito upang simulan ang pagpapatupad bago lumikha ng anumang mga bagay. At ang Void ay isang uri ng modifier na nagsasaad na ang pamamaraan o variable ay hindi nagbabalik ng anumang halaga.

5. Ano ang isang bagay?

Ang isang bagay ay isang halimbawa ng isang klase kung saan ma-access namin ang mga pamamaraan ng klase na iyon. Ginagamit ang keyword na 'Bago' upang lumikha ng isang object. Ang isang klase na lumilikha ng isang bagay sa memorya ay maglalaman ng impormasyon tungkol sa mga pamamaraan, variable, at pag-uugali ng klase na iyon.

6. Tukuyin ang Mga Tagabuo

Ang tagapagbuo ay isang pagpapaandar ng miyembro sa isang klase na may parehong pangalan sa klase nito. Ang tagapagbuo ay awtomatikong tinawag tuwing nilikha ang isang klase ng object. Binubuo nito ang mga halaga ng mga kasapi ng data habang pinasimulan ang klase.

7. Ano ang Jagged Arrays?

Ang Array na mayroong mga elemento ng uri ng array ay tinatawag na jagged Array. Ang mga elemento ay maaaring may iba't ibang mga sukat at sukat. Maaari din nating tawagan ang jagged Array bilang isang Array ng mga arrays.

8. Ano ang pagkakaiba sa pagitan ng mga parameter ng ref & out?

Ang isang argument na naipasa bilang ref ay dapat na gawing pasiya bago pumasa sa pamamaraan samantalang ang parameter na lumabas ay hindi kailangang gawing una pa bago pumasa sa isang pamamaraan.

9. Ano ang silbi ng pahayag na 'gamit' sa C #?

Ginagamit ang bloke na 'gamit' upang makakuha ng isang mapagkukunan at maproseso ito at pagkatapos ay awtomatikong itapon kung kailan natapos ang pagpapatupad ng bloke.

10. Ano ang serialization?

Kapag nais naming magdala ng isang bagay sa pamamagitan ng isang network, kailangan naming i-convert ang bagay sa isang stream ng mga byte. Ang proseso ng pag-convert ng isang bagay sa isang daloy ng mga byte ay tinatawag na Serialization. Para sa isang bagay na maging serializable, dapat itong ipatupad ang ISerialize Interface. Ang De-serialization ay ang reverse proseso ng paglikha ng isang bagay mula sa isang stream ng bytes.

11. Maaari ba nating gamitin ang 'utos' na ito sa loob ng isang static na pamamaraan?

Hindi namin magagamit ang 'Ito' sa isang static na pamamaraan dahil maaari lamang kaming gumamit ng mga static variable / pamamaraan sa isang static na pamamaraan.

12. Ano ang pagkakaiba sa pagitan ng mga pare-pareho at read-only?

Ang mga pare-pareho na variable ay idineklara at pinasimulan sa oras ng pagsulat. Hindi mababago ang halaga pagkatapos. Ginagamit lamang ang read-only kapag nais naming italaga ang halaga sa run time.

13. Ano ang isang klase ng interface? Magbigay ng isang halimbawa nito

Ang isang Interface ay isang mahirap unawain na klase na mayroon lamang mga pampublikong abstract na pamamaraan, at ang mga pamamaraan ay mayroon lamang deklarasyon at hindi ang kahulugan. Ang mga abstract na pamamaraan na ito ay dapat na ipatupad sa minana ng mga klase.

 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { interface Guru99Interface { void SetTutorial(int pID, string pName); String GetTutorial(); } class Guru99Tutorial : Guru99Interface { protected int TutorialID; protected string TutorialName; public void SetTutorial(int pID, string pName) { TutorialID = pID; TutorialName = pName; } public String GetTutorial() { return TutorialName; } static void Main(string[] args) { Guru99Tutorial pTutor = new Guru99Tutorial(); pTutor.SetTutorial(1,'.Net by Guru99'); Console.WriteLine(pTutor.GetTutorial()); Console.ReadKey(); } } } 

14. Ano ang mga uri ng halaga at uri ng sanggunian?

Ang isang uri ng halaga ay nagtataglay ng isang halaga ng data sa loob ng sarili nitong puwang ng memorya. Halimbawa

int a = 30;

Ang uri ng sanggunian ay nag-iimbak ng address ng Bagay kung saan itinatago ang halaga. Ito ay isang pointer sa isa pang lokasyon ng memorya.

string b = 'Hello Guru99!!';

15. Ano ang Custom Control at User Control?

Ang mga Custom na Kontrol ay mga kontrol na nabuo bilang pinagsamang code (Dlls), mas madaling gamitin ang mga iyon at maaaring maidagdag sa toolbox. Maaaring i-drag at i-drop ng mga developer ang mga kontrol sa kanilang mga web form. Ang mga katangian ay maaaring, sa oras ng disenyo. Madali kaming makakapagdagdag ng mga pasadyang kontrol sa Maramihang Mga Aplikasyon (Kung Ibinahagi ang Dlls). Kaya, Kung ang mga ito ay pribado, maaari kaming makopya sa dll sa bin direktoryo ng web application at pagkatapos ay magdagdag ng sanggunian at maaaring magamit ang mga ito.

Ang Mga Kontrol ng User ay halos kapareho sa ASP na nagsasama ng mga file, at madaling likhain. Ang mga kontrol ng gumagamit ay hindi maaaring mailagay sa toolbox at mai-drag - bumaba mula rito. Nasa likod nila ang kanilang disenyo at code. Ang extension ng file para sa mga kontrol ng gumagamit ay ascx.

16. Ano ang mga tinatakan na klase sa C #?

Lumilikha kami ng mga natatakan na klase kapag nais naming paghigpitan ang klase na mana. Ginamit ang selyadong modifier upang maiwasan ang paghihiwalay mula sa isang klase. Kung pilit naming tinukoy ang isang tinatakan na klase bilang batayang klase, pagkatapos ay nangyayari ang isang pagkakasunod-sunod na error.

17. Ano ang pamamaraang overloading?

Ang pamamaraang overloading ay lumilikha ng maraming mga pamamaraan na may parehong pangalan na may natatanging mga lagda sa parehong klase. Kapag nag-ipon kami, ang tagatala ay gumagamit ng resolusyon ng labis na karga upang matukoy ang tukoy na pamamaraan na tatawagin.

18. Ano ang pagkakaiba sa pagitan ng Array at Arraylist?

Sa isang array, maaari kaming magkaroon ng mga item ng parehong uri lamang. Ang laki ng array ay naayos kung ihahambing. Sa isang arraylist ay katulad ng isang array, ngunit wala itong isang nakapirming laki.

19. Maaari bang mai-override ang isang pribadong virtual na pamamaraan?

Hindi, dahil hindi sila naa-access sa labas ng klase.

20. Ilarawan ang accessibility modifier na 'protektado ng panloob'.

Protektadong Panloob na mga variable / pamamaraan ay naa-access sa loob ng parehong pagpupulong at mula rin sa mga klase na nagmula sa magulang na klase na ito.

21. Ano ang mga pagkakaiba sa pagitan ng System.String at System.Txt.StringBuilder na mga klase?

System.String ay hindi nababago. Kapag binago namin ang halaga ng isang variable ng string, pagkatapos ang isang bagong memorya ay inilalaan sa bagong halaga at inilabas ang dating alokasyon ng memorya. Ang System.StringBuilder ay idinisenyo upang magkaroon ng isang konsepto ng isang nababagabag na string kung saan maaaring isagawa ang iba't ibang mga operasyon nang walang paglalaan ng hiwalay na lokasyon ng memorya para sa binagong string.

22. Ano ang pagkakaiba sa pagitan ng System.Array.CopyTo () at System.Array.Clone ()?

Gamit ang pamamaraang Clone (), lumilikha kami ng isang bagong object ng array na naglalaman ng lahat ng mga elemento sa orihinal na Array at ginagamit ang pamamaraan ng CopyTo (). Ang lahat ng mga elemento ng umiiral na mga kopya ng array sa isa pang mayroon nang array. Ang parehong pamamaraan ay nagsasagawa ng isang mababaw na kopya.

23. Paano natin maaayos ang mga elemento ng Array sa pababang pagkakasunud-sunod?

Paggamit ng mga pamamaraan ng Pagsunud-sunurin () na sinusundan ng pamamaraang Reverse ().

24. Isulat ang C # syntax upang makakuha ng isang pagbubukod

Upang makakuha ng isang pagbubukod, gumagamit kami ng mga block ng try-catch. Ang catch block ay maaaring magkaroon ng isang parameter ng system. Uri ng pagbubukod.

Hal:

 try { GetAllData(); } catch (Exception ex) { } 

Sa halimbawa sa itaas, maaari nating alisin ang parameter mula sa pahayag ng catch.

25. Ano ang pagkakaiba sa pagitan ng isang interface at abstract na klase?

Ang mga interface ay mayroong lahat ng mga pamamaraan na mayroon lamang deklarasyon ngunit walang kahulugan. Sa isang mahirap unawain na klase, maaari kaming magkaroon ng ilang mga kongkretong pamamaraan. Sa isang klase ng interface, ang lahat ng mga pamamaraan ay pampubliko. Ang isang mahirap unawain na klase ay maaaring may mga pribadong pamamaraan.

26. Ano ang pagkakaiba sa pagitan ng mga pamamaraang Finalize () at Itapon ()?

Ang Itapon () ay tinawag kapag nais namin para sa isang bagay na palabasin ang anumang hindi pinamamahalaang mga mapagkukunan sa kanila. Sa kabilang banda, ang Finalize () ay ginagamit para sa parehong layunin, ngunit hindi nito ginagarantiyahan ang koleksyon ng basura ng isang bagay.

27. Ano ang mga pabilog na sanggunian?

Ang paikot na sanggunian ay sitwasyon kung saan dalawa o higit pang mga mapagkukunan ay nakasalalay sa bawat isa sanhi ng kondisyon ng lock at ginawang hindi magamit ang mga mapagkukunan.

28. Ano ang mga generics sa C # .NET?

Ginagamit ang mga generic upang makagawa ng mga magagamit muli na mga klase ng code upang bawasan ang kalabisan ng code, dagdagan ang kaligtasan ng uri, at pagganap. Gamit ang mga generics, makakalikha kami ng mga klase sa koleksyon. Upang lumikha ng pangkalahatang koleksyon, System.Collection.Generic namespace ay dapat gamitin sa halip na mga klase tulad ng ArrayList sa System.Collection namespace. Itinataguyod ng Generics ang paggamit ng mga uri ng parameterized.

29. Ano ang isang object pool sa .NET?

Ang isang object pool ay isang lalagyan na mayroong mga bagay na handa nang magamit. Sinusubaybayan nito ang bagay na kasalukuyang ginagamit, kabuuang bilang ng mga bagay sa pool. Binabawasan nito ang overhead ng paglikha at muling paglikha ng mga bagay.

30. Ilista ang karaniwang ginagamit na mga uri ng pagbubukod sa .net

ArgumentException, ArgumentNullException, ArgumentOutOfRangeException, ArithmeticException, DivideByZeroException, OverflowException, IndexOutOfRangeException, InvalidCastException, InvalidOperationException, IOEndOfStreamException, NullRex

31. Ano ang Mga Pasadyang Pagbubukod?

Minsan mayroong ilang mga error na kailangang hawakan ayon sa mga kinakailangan ng gumagamit. Ginagamit ang mga pasadyang pagbubukod para sa kanila at ginagamit na tinukoy na mga pagbubukod.

32. Ano ang mga delegado?

Ang mga delegado ay pareho ng mga point point ng pag-andar sa C ++, ngunit ang pagkakaiba lamang ay ang mga ito ay ligtas na uri, hindi katulad ng mga point point ng pag-andar. Kinakailangan ang mga delegado sapagkat maaari silang magamit upang magsulat ng higit pang mga pangkalahatang pag-andar na ligtas na uri.

33. Paano ka magmamana ng isang klase sa ibang klase sa C #?

Ginagamit ang mana bilang tagapagmana ng mana sa C #. Maglagay lamang ng isang colon at pagkatapos ang pangalan ng klase.

pampublikong klase DerivedClass: BaseClass

34. Ano ang batayang klase sa .net na nagmula sa lahat ng mga klase?

 System.Object 

35. Ano ang pagkakaiba sa pagitan ng pamamaraang pag-override at pag-overload ng pamamaraan?

Sa pag-override ng pamamaraan, binabago namin ang kahulugan ng pamamaraan sa nagmula sa klase na nagbabago sa pag-uugali ng pamamaraan. Ang pamamaraang overloading ay lumilikha ng isang pamamaraan na may parehong pangalan sa loob ng parehong klase na may iba't ibang mga lagda.

36. Ano ang iba't ibang mga paraan na maaaring mag-overload ang isang pamamaraan?

Maaaring mag-overload ang mga pamamaraan gamit ang iba't ibang mga uri ng data para sa isang parameter, magkakaibang pagkakasunud-sunod ng mga parameter, at iba't ibang bilang ng mga parameter.

37. Bakit hindi mo matukoy ang modifier ng kakayahang mai-access para sa mga pamamaraan sa loob ng interface?

Sa isang interface, mayroon kaming mga virtual na pamamaraan na walang kahulugan ng pamamaraan. Ang lahat ng mga pamamaraan ay naroroon upang ma-override sa hinango na klase. Iyon ang dahilan kung bakit lahat sila ay pampubliko.

38. Paano natin maitatakda ang klase upang manahin, ngunit maiiwasan ang pamamaraan mula sa labis na pagsakay?

Ideklara ang klase bilang publiko at iselyado ang pamamaraan upang maiwasan itong mai-override.

39. Ano ang mangyayari kung ang mga minana na interface ay may magkasalungat na mga pangalan ng pamamaraan?

Nasa iyo ang pagpapatupad dahil ang pamamaraan ay nasa loob ng iyong sariling klase. Maaaring may problema kapag ang mga pamamaraan mula sa iba't ibang mga interface ay inaasahan ang iba't ibang data, ngunit hanggang sa nagmamalasakit sa tagatala ikaw ay okay.

40. Ano ang pagkakaiba sa pagitan ng isang Istraktura at isang Klase?

Ang mga istraktura ay mga variable na uri ng halaga, at ang mga klase ay mga uri ng sanggunian. Ang mga istrukturang nakaimbak sa Stack ay nagdudulot ng karagdagang overhead ngunit mas mabilis na pagkuha. Ang mga istraktura ay hindi maaaring namana.

41. Paano gamitin ang mga nullable na uri sa .Net?

Ang mga uri ng halaga ay maaaring tumagal ng alinman sa kanilang mga normal na halaga o isang null na halaga. Ang mga nasabing uri ay tinatawag na mga uri na hindi napapawalang-bisa.

 Int? someID = null; If(someID.HasVAlue) { } 

42. Paano kami makakalikha ng isang array na may mga hindi default na halaga?

Maaari kaming lumikha ng isang array na may mga hindi default na halaga gamit ang Enumerable. Ulitin.

43. Ano ang pagkakaiba sa pagitan ng 'is' at 'bilang' mga operator sa c #?

Ginagamit ang operator na 'ay' upang suriin ang pagiging tugma ng isang bagay na may isang naibigay na uri, at ibinabalik nito ang resulta bilang Boolean.

Ginagamit ang operator na 'bilang' para sa paghahagis ng isang bagay sa isang uri o isang klase.

44. Ano ang isang delegadong multicast?

Ang isang delegado na mayroong maraming mga handler na nakatalaga dito ay tinatawag na multicast delegate. Ang bawat handler ay nakatalaga sa isang pamamaraan.

45. Ano ang mga index sa C # .NET?

Kilala ang mga index bilang matalinong arrays sa C #. Pinapayagan nitong mai-index ang mga pagkakataon ng isang klase sa parehong paraan bilang isang array.

Hal:

 public int this[int index] // Indexer declaration 

46. ​​Ano ang pagkakaiba sa pagitan ng 'magtapon' at 'magtapon ng ex' sa .NET?

Pinapanatili ng pahayag na 'Throw' ang orihinal na error stack habang ang 'throw ex' ay mayroong stack trace mula sa kanilang throw point. Palaging pinapayuhan na gamitin ang 'magtapon' dahil nagbibigay ito ng mas tumpak na impormasyon sa error.

47. Ano ang mga katangiang C # at kahalagahan nito?

Nagbibigay ang C # ng mga developer ng isang paraan upang tukuyin ang mga nagpapahayag na mga tag sa ilang mga nilalang, hal. Ang klase, pamamaraan, atbp ay tinatawag na mga katangian. Ang impormasyon ng katangiang maaaring makuha sa runtime gamit ang Reflection.

48. Paano ipatupad ang isang pattern ng disenyo ng singleton sa C #?

Sa isang pattern ng singleton, ang isang klase ay maaari lamang magkaroon ng isang halimbawa at nagbibigay ng isang access point dito sa buong mundo.

Hal:

 Public sealed class Singleton { Private static readonly Singleton _instance = new Singleton(); } 

49. Ano ang pagkakaiba sa pagitan ng directcast at ctype?

Ginagamit ang DirectCast upang mai-convert ang uri ng bagay na nangangailangan ng uri ng run-time na kapareho ng tinukoy na uri sa DirectCast.

Ginagamit ang Ctype para sa conversion kung saan ang pag-convert ay tinukoy sa pagitan ng expression at ng uri.

50. Ang C # code ay pinamamahalaan o hindi pinamamahalaan na code?

Ang C # ay pinamamahalaang code dahil ang Karaniwang runtime ng wika ay maaaring mag-ipon ng C # code sa Katamtamang wika.

51. Ano ang application ng Console?

Ang isang application ng console ay isang application na maaaring patakbuhin sa command prompt sa Windows. Para sa anumang nagsisimula sa .Net, ang pagbuo ng isang application ng console ay perpekto ang unang hakbang, upang magsimula sa.

52. Magbigay ng isang halimbawa ng pag-alis ng isang elemento mula sa pila

Ginagamit ang pamamaraang dequeue upang alisin ang isang elemento mula sa pila.

 using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Queue qt = new Queue(); qt.Enqueue(1); qt.Enqueue(2); qt.Enqueue(3); foreach (Object obj in qt) { Console.WriteLine(obj); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine('The number of elements in the Queue ' + qt.Count); Console.WriteLine('Does the Queue contain ' + qt.Contains(3)); Console.ReadKey(); } } }