Bu yazımda Sizlere C# ta Abstract Class ve İnterface kavramını anlatacak ve elimden geldiği kadar da aralarında ki farkı daha çok yaptığım örnekle anlatacağım!!
Abstract class
Abstract Class lar miras (inheritance) vermek amacıyla iplemente edilen classlardır.Yalnız Abstract class ta oluşturulan metodlar veya değişkenler türetilen class ta veyahut miras alan class ta tekrar yazmak zorunda deiliz. Ayrıca Abstract Classın diğer class lar gibi nesnesi oluşturulamaz.Bide Abstract Class ta tanımlayıpta bunu alan class ta aynı metodu iplemente ederken mutlaka o metodu override olarak belirtmeliyiz.
İnterface
İnterface ler bir nevi kalıtım gibidir fakat temel amaçlarından biriside şablon olarak bazı metodları sürekli kullanmak. Interface ler aslında şablon gibidir interface içerisinde oluşturulan metotlar tüm diğer class larda kullanılabilir yalnız bu metotlar interface de gerçeklenmediğinden mecburen interface i alan class ta iplemente etmek zorundayız aldığımız metotları..Abstract Class ta olduğu gibi interfacede de nesne oluşturamıyoruz.
Şimdi Abstract Class ve İnterface i kullandığım örnekle bu konuyu daha iyi anlayacağınızı düşünüyorum.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
public interface myinterface
{
int topla(int a, int b);
int carp(int a, int b);
int boll(int a, int b);
}
public abstract class mehmet:myinterface
{
public int d, e;
public int topla(int a, int b)
{
return a + b;
}
public int carp(int a, int b)
{
return a * b;
}
public int boll(int a, int b)
{
return a / b;
}
public abstract void myfunc();
}
class deveci : mehmet
{
static void Main(string[] args)
{
deveci x = new deveci();
Console.WriteLine(x.topla(3,4));
x.myfunc();
Console.WriteLine(x.d+” “+x.e);
Console.ReadLine();
}
public override void myfunc()
{
d = 4;
e = 6;
}
}
}
işte kodun çıktısı..
Oracle Exadata SQL Server Goldengate Weblogic EBS ve Linux konusunda aşağıdaki konularda 7×24 Uzman Danışmanlara yada Eğitimlere mi
İhtiyacınız var mehmet.deveci@gridgroup.com.tr adresine mail atarak Bizimle iletişime geçebilirsiniz.
– Oracle Veritabanı Danışmanlığı
– Oracle Veritabanı Bakım ve Destek
– Exadata Danışmanlığı
– Exadata Bakım ve Destek
– SQL Server Veritabanı Danışmanlığı
– SQL Server Veritabanı Bakım ve Destek
– Goldengate Danışmanlığı
– Goldengate Bakım ve Destek
– Linux Danışmanlığı
– Linux Bakım ve Destek
– Oracle EBS Danışmanlığı
– Oracle EBS Bakım ve Destek
– Weblogic Danışmanlığı
– Weblogic Bakım ve Destek
– Oracle Veritabanı Eğitimleri
– Oracle VM Server Danışmanlığı
– Oracle VM Server Bakım ve Destek
– Oracle EPPM Danışmanlığı
– Oracle EPPM Bakım ve Destek
– Oracle Primavera Danışmanlığı
– Oracle Primavera Bakım ve Destek
– Oracle Eğitimleri
– SQL Server Eğitimleri
– Goldengate Eğitimleri
– Exadata Eğitimleri
– Linux Eğitimleri
– Oracle EBS Eğitimleri
– Oracle VM Server Eğitimleri
– Weblogic Eğitimleri
– Oracle EPPM Eğitimleri
– Oracle Primavera Eğitimleri