สร้างวิธีการอินเทอร์เฟซ

เสร็จสมบูรณ์เมื่อ

ในฐานะนักพัฒนาที่ได้รับมอบหมายให้สร้างอินเทอร์เฟซของโครงการคุณ คุณเริ่มเพิ่มวิธีการอินเทอร์เฟซนอกเหนือจากอินเทอร์เฟซที่มีคุณสมบัติเท่านั้น เมื่อต้องการทดสอบอินเทอร์เฟซ คุณพัฒนาคลาสที่ใช้วิธีการเหล่านี้

อินเทอร์เฟซคือชุดของฟังก์ชันที่เกี่ยวข้องที่คลาสต้องใช้ ซึ่งอาจรวมถึงวิธีการ คุณสมบัติ เหตุการณ์ และตัวทําดัชนี

ตัวอย่างเช่น พิจารณาอินเทอร์เฟซที่ IVehicle ชื่อว่า ที่มี Drive เมธอดและคุณสมบัติสําหรับ Speed และ Color:

public interface IVehicle
{
    int Speed { get; set; }
    string Color { get; set; }
    void Drive();
}

หมายเหตุ

Driveวิธีการประกาศวิธีการโดยไม่มีเนื้อความในอินเทอร์เฟซ เมื่อเพิ่มวิธีการลงในอินเทอร์เฟซ ให้ใส่ลายเซ็นของเมธอดในการประกาศอินเทอร์เฟซ แต่ไม่รวมถึงเนื้อความของเมธอด คลาสที่นําอินเทอร์เฟซไปใช้มีเนื้อความของเมธอด

สร้างคลาสที่ใช้อินเทอร์เฟซ

การใช้อินเทอร์เฟซในคลาสจะเหมือนกันสําหรับคลาสที่มีคุณสมบัติ วิธีการ หรือทั้งสองอย่าง เมื่อสร้างคลาสที่ใช้อินเทอร์เฟซ ให้ปฏิบัติตามหลักเกณฑ์เหล่านี้:

  • ให้การใช้งานสําหรับสมาชิกของอินเทอร์เฟซทั้งหมด
  • ประกาศอินเทอร์เฟซเป็นส่วนหนึ่งของข้อกําหนดคลาสและใส่เนื้อความวิธีการที่จําเป็น

หมายเหตุ

คลาส สามารถใช้อินเทอร์เฟซหลายรายการ ซึ่งทําให้มีลักษณะการทํางานจากหลายแหล่งข้อมูล อย่างไรก็ตาม คลาสสามารถสืบทอดมาจากระดับชั้นเดียวเท่านั้น ถ้าคลาสพื้นฐานใช้อินเทอร์เฟซ คลาสใด ๆ ที่ได้รับมาจากคลาสพื้นฐานจะสืบทอดการใช้งานนั้น

ตรวจสอบตัวอย่างคลาสต่อไปนี้ Car ซึ่งใช้ IVehicle อินเทอร์เฟซ:

public class Car : IVehicle
{
    private int _speed;
    private string _color;

    public int Speed
    {
        get { return _speed; }
        set { _speed = value; }
    }

    public string Color
    {
        get { return _color; }
        set { _color = value; }
    }

    public void Drive()
    {
        // Implementation of the Drive method
        Console.WriteLine("The car is driving.");
    }
}

ใน Drive ตัวอย่างนี้ วิธีการ ถูกนํามาใช้เพื่อแสดงข้อความเมื่อถูกเรียก นี่เป็นเพียงการใช้งานอย่างง่ายเพื่อวัตถุประสงค์ในการสาธิต ในแอปพลิเคชัน Drive จริง เมธอด อาจประกอบด้วยโค้ดที่ซับซ้อนมากขึ้นซึ่งควบคุมวิธีการขับเคลื่อนรถยนต์

อินเทอร์เฟซจะกําหนดสัญญาของลายเซ็นวิธีการและคุณสมบัติที่จําเป็นต้องใช้คลาส เมื่อคลาสใช้อินเทอร์เฟซ จะมีโค้ดจริงสําหรับวิธีการเหล่านี้ ซึ่งจะเปลี่ยนลายเซ็นของวิธีการเป็นรูทีนการทํางานได้อย่างมีประสิทธิภาพ กระบวนการนี้ช่วยให้คลาสสามารถปรับใช้ลักษณะการทํางานที่หลากหลายโดยการใช้อินเทอร์เฟซหลายรายการ เมื่อคุณยังคงพัฒนาและกําหนดวิธีการภายในอินเทอร์เฟซคุณจะพบว่าการใช้อินเทอร์เฟซอย่างมีประสิทธิภาพสามารถนําไปสู่การทําความสะอาดมีประสิทธิภาพมากขึ้นและจัดการได้โค้ด