Abstract Class Pada bahasa pemrograman C#

Abstract Class Pada bahasa pemrograman C# | IDCSharp
Abstract Class Pada bahasa pemrograman C# | IDCSharp

Apakah kamu menggunakan perangkat Mobile?, Yuk lihat daftar isi materi C# di IDCsharp.com


Abstract Class adalah sebuah Class yang berfungsi untuk menyembunyikan detail fungsi dari sebuah class. Tipe Class ini biasanya digunakan untuk mendefinisikan Base Class pada suatu program, tanpa menentukan fungsi dari class tersebut pada tubuhnya.

Di deklarasikan tanpa adanya Implementasi, Lantas bagaimana fungsinya?, Abstract Class di deklarasikan dengan tujuan agar Child Class yang akan menyediakan implementasi fungsinya.

Terdapat 2 Abstract dalam C#:

  • Abstract Class
  • Abstract Method

Abstract Method adalah method yang digunakan dalam Abstract Class, sama seperti abstract class, Abstract method juga tidak memiliki fungsi dalam tubuhnya.

modifier abstract class NamaClass {
    //deklarasi Field
    modifier TipeData NamaVariable;
    //deklarasi method
    modifier abstract TypeData NamaMethod();
}
modifier class ChildClass: NamaClass{
    override modifier TypeData NamaMethod(){}
}

Class atau method yang di deklarasikan sebagai Abstract, perlu kita tambahkan abstract Keyword pada awal Deklarasi.

Baca Juga: Nested Class pada bahasa C#

Class yang di deklarasikan dengan modifier Abstract hanya dapat di extend, tidak dapat langsung di gunakan.

contoh Abstract Class C#

contoh 1:

public abstract class Mobil
{
	protected string nama;  
	public abstract string Klakson(); 
} 

public class Honda : Mobil
{  
	public Honda() 
	{
		this.nama = "Civic";        
	}    
	
	override public string sound()
	{ 
		return "Biimm.....!";
	}
} 

Contoh 2:

using System; 

public abstract class idcsharp { //deklarasi abstract class idcsharp
    public abstract void idcs1(); //deklarasi abstract method idcs1
} 

public class idcsharp1 : idcsharp { 

    public override void idcs1() 
    { 
        Console.WriteLine("Halo selamat datang di IDCSharp.com"); 
    } 
} 

public class main_method { 
    public static void Main() 
    { 
        idcsharp obj = new idcsharp1(); //deklarasi object
        obj.idcs1(); 
    } 
}   

Abstract Class mempunyai beberapa fitur yang berguna :

  • Class dengan modifier Abstract tidak dapat di inisiasi.
  • Method non-abstract dapat dimasukan pada Class Abstract
  • Dapat Berisi Method dan Accessors Abstract juga.
  • Class yang bukan Abstract yang diturunkan dari Class Abstract harus mengandung implementasi dari semua Method dan Accessor Abstract yang diwariskan.
  • Tidak mendukung multiple inheritance
  • Dapat memiliki Constructor ataupun Destructor.
  • Dapat memiliki field dan constant.

Bagaimana menurutmu, apakah kamu sudah paham mengenai Abstract pada bahasa pemrograman C#?. Ceritakan pengalamanmu di kolom komentar ya.