C# เป็นภาษาโปรแกรมเชิงวัตถุทั่วไป เวอร์ชันเสถียรล่าสุด (ณ เวลาที่เขียนโพสต์นี้) คือ C# 6.0 ซึ่งเปิดตัวในปี 2558
ในโพสต์นี้ เราได้รวบรวมรายการคำถามสัมภาษณ์ c# และคำตอบสำหรับผู้เริ่มต้นและผู้ใช้ที่มีประสบการณ์ คำถามเหล่านี้จะช่วยคุณเตรียมตัวสำหรับการสัมภาษณ์ เพื่อการแก้ไขอย่างรวดเร็ว และเสริมความแข็งแกร่งให้กับทักษะทางเทคนิคของคุณ
1. C# คืออะไร?
C# (ออกเสียงว่า CSharp) เป็นภาษาเชิงวัตถุ ประเภทที่ปลอดภัยและมีการจัดการ ซึ่งคอมไพล์โดย .NET Framework เพื่อสร้าง Microsoft Intermediate Language (MSIL)
2. ความคิดเห็นประเภทใดใน C# พร้อมตัวอย่าง?
- บรรทัดเดียว
//This is a Single line comment
- หลายบรรทัด (/* */)
/*This is a multiple line comment
We are in line 2 Last line of comment*/
- ความคิดเห็น XML (///)
/// These comments can be used to briefly describe a class,
/// method, interface or any other entity.
3. catch block หลายอันสามารถดำเนินการได้หรือไม่?
ไม่ได้ ไม่สามารถดำเนินการบล็อก catch
หลายบล็อกได้ เมื่อดำเนินการโค้ด catch
ที่เหมาะสมแล้ว การควบคุมจะถูกถ่ายโอนไปยังบล็อก finally
จากนั้นโค้ดที่ตามหลังบล็อกสุดท้ายจะถูกดำเนินการ
4. ความแตกต่างระหว่างสาธารณะ คงที่ และโมฆะคืออะไร?
ทั้งหมดนี้คือ ตัวแก้ไขการเข้าถึง/ประเภท ใน C#
public
ตัวแปรหรือเมธอดที่ประกาศสามารถเข้าถึงได้ทุกที่ในแอปพลิเคชัน
static
ตัวแปรหรือเมธอดที่ประกาศสามารถเข้าถึงได้ทั่วโลกโดยไม่ต้องสร้างอินสแตนซ์ของคลาส คอมไพเลอร์จะจัดเก็บที่อยู่ของเมธอดเป็นจุดเริ่มต้น และใช้ข้อมูลนี้เพื่อเริ่มดำเนินการก่อนที่จะสร้างออบเจ็กต์ใดๆ
void
เป็นตัวแก้ไขประเภทที่ระบุว่าเมธอดหรือตัวแปรไม่ส่งคืนค่าใดๆ
5. วัตถุคืออะไร?
วัตถุเป็นตัวอย่างของคลาสที่เราเข้าถึงวิธีการของคลาสนั้น คำหลัก new
ใช้เพื่อสร้างวัตถุ คลาสที่สร้างอ็อบเจ็กต์ในหน่วยความจำจะมีข้อมูลเกี่ยวกับเมธอด ตัวแปร และพฤติกรรมของคลาสนั้น
6. กำหนดคอนสตรัคเตอร์?
Constructor คือฟังก์ชันสมาชิกในคลาสที่มีชื่อเดียวกับคลาส Constructor จะถูกเรียกใช้โดยอัตโนมัติทุกครั้งที่มีการสร้างคลาสอ็อบเจ็กต์ มันสร้างค่าของสมาชิกข้อมูลในขณะที่เริ่มต้นคลาสpublic
class
Employee
{
int
empid;
string
empName;
public
Employee(int
a , string
e)
{
empid = a;
empName = e;
}
}
7. Jagged Array คืออะไร
อาร์เรย์ที่มีองค์ประกอบประเภท array
เรียกว่าอาร์เรย์หยัก องค์ประกอบอาจมีขนาดและขนาดต่างกัน นอกจากนี้เรายังสามารถเรียกอาร์เรย์หยักเป็น อาร์เรย์ของอาร์เรย์
// Declare the array of two elements:
int[][] arr = new
int[2][];
// Initialize the elements:
arr[0] = new
int[5] { 1, 3, 5, 7, 9 };
arr[1] = new
int[4] { 2, 4, 6, 8 };
8. อะไรคือความแตกต่างระหว่างพารามิเตอร์ ref และ out?
อาร์กิวเมนต์ที่ส่งเป็น ref
จะต้องเริ่มต้นก่อนที่จะส่งผ่านไปยังเมธอด ในขณะที่พารามิเตอร์ out
ไม่จำเป็นต้องเริ่มต้นก่อนที่จะส่งผ่านไปยังเมธอด
9. การใช้คำสั่งในภาษา C# คืออะไร?
บล็อก using
ใช้เพื่อรับทรัพยากรและใช้งาน จากนั้นจะกำจัดโดยอัตโนมัติเมื่อการดำเนินการบล็อกเสร็จสมบูรณ์
10. การทำให้เป็นอนุกรมคืออะไร?
เมื่อเราต้องการขนส่งวัตถุผ่านเครือข่าย เราจะต้องแปลงวัตถุให้เป็นกระแสข้อมูลไบต์ กระบวนการแปลงวัตถุให้เป็นกระแสข้อมูลไบต์เรียกว่า การทำให้เป็นอนุกรม เพื่อให้ออบเจ็กต์เป็นแบบซีเรียลไลซ์ได้ ควรสืบทอด ISerialize
Interface
การดีซีเรียลไลซ์เซชันเป็นกระบวนการย้อนกลับของการสร้างออบเจ็กต์จากกระแสข้อมูลไบต์
สำหรับคำถามและคำตอบเพิ่มเติม คุณสามารถดูได้ที่ "เว็บไซต์" ของเรา
ขอบคุณ!