Sunday, February 16, 2020

Abstract Class, Abstract Method dan Virtual Method di dalam C#

1. Abstract Class 
Adalah kelas yang menggambarkan fungsionalitas dari method - method yang ada di dalam nya. Method di dalam Abstract class hanya menggambarkan Nama Method, Tipe data Nilai Kembalian, dan Parameter nya ...  tidak boleh ada implementasi di dalam method nya, hanya itu saja. 
Jadi inti nya abstract class hanya ngasi tau nama method, tipe keluaran, sama tipe input ... udah.

2. Abstract Method
Adalah method yang ada di dalam abstract class. Sifat dari abstract method memaksa, dengan kata lain harus di implementasikan di kelas yang menjadi anak nya, kalau ngga di implementasikan/ ngga ada di kelas anak nya maka akan muncul error. ingat ya, sifat nya memaksa. Selain itu abstract method hanya bisa di definisikan di dalam abstract class saja.

3. Virtual Method
Berbeda dengan abstract method, Virtual method tidak bersifat memaksakita bisa menambahkan implementasi code di dalam nya, dan bisa di definisikan di dalam abstract class atau class biasa. 

Berikut contoh penggambaran ketiga nya di dalam code C#

public abstract class Base
{
     public virtual void Test()
     {
         Console.WriteLine("This is the base version of the virtual method");
     }
     public abstract string ToString();
     public abstract bool Equals(object obj);
}

public class Derived : Base
{
     public override void Test()
     {
         Console.WriteLine("This is the derived version of the virtual                 method");
     }
     public abstract override string ToString(){
          //Implementasi code
     };
     public abstract override bool Equals(object obj){
          //implementasi code
     };
}

Share:
Location: Jakarta, Indonesia

0 comments:

Post a Comment