Apa itu Kelas Antarmuka?
Antarmuka digunakan bersama kelas untuk menentukan apa yang disebut kontrak. Kontrak adalah kesepakatan tentang apa yang akan diberikan kelas untuk aplikasi.
Antarmuka mendeklarasikan properti dan metode. Terserah kelas untuk menentukan dengan tepat apa metode yang akan dilakukan.
Mari kita lihat contoh antarmuka dengan mengubah kelas di aplikasi Konsol kita. Perhatikan bahwa kami tidak akan menjalankan kode karena tidak ada yang dapat dijalankan menggunakan antarmuka.
Mari buat kelas antarmuka. Kelas tersebut akan diberi nama "Antarmuka Guru99." Kelas utama kami kemudian akan memperluas antarmuka yang ditentukan. Semua kode harus ditulis di file Program.cs.
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();}}}
Penjelasan Kode: -
Di sini, kami menjelaskan bagian penting dari kode
- Kami pertama kali mendefinisikan antarmuka yang disebut "Guru99Interface." Perhatikan bahwa kata kunci "antarmuka" digunakan untuk mendefinisikan antarmuka.
- Selanjutnya, kami mendefinisikan metode yang akan digunakan oleh antarmuka kami. Dalam kasus ini, kami mendefinisikan metode yang sama yang digunakan dalam semua contoh sebelumnya. Perhatikan bahwa antarmuka hanya mendeklarasikan metode. Itu tidak mendefinisikan kode di dalamnya.
- Kami kemudian membuat kelas Guru99Tutorial kami memperluas antarmuka. Di sinilah kita menulis kode yang mendefinisikan berbagai metode yang dideklarasikan di antarmuka. Pengodean semacam ini mencapai yang berikut
- Ini memastikan bahwa kelas, Guru99Tutorial, hanya menambahkan kode yang diperlukan untuk metode "SetTutorial" dan "GetTutorial" dan tidak ada yang lain.
- Ini juga memastikan bahwa antarmuka berperilaku seperti kontrak. Kelas harus mematuhi kontrak. Jadi jika kontrak mengatakan bahwa ia harus memiliki dua metode yang disebut "SetTutorial" dan "GetTutorial", maka begitulah seharusnya.
Ringkasan
- Antarmuka mendefinisikan kontrak yang akan dipatuhi oleh kelas. Antarmuka mendefinisikan operasi apa saja yang dapat dilakukan kelas.