C# TA ABSTRACT CLASS VE INTERFACE KULLANIMI

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

Mehmet Salih Deveci

I am Certified Expert about Oracle & SQL Server database, Goldengate, Exadata Machine, Oracle Database Appliance administrator with 10+years experience.I have OCA, OCP, OCE RAC Expert Certificates I have worked 100+ Banking, Insurance, Finance, Telco and etc. clients as a Consultant, Insource or Outsource.I have done 200+ Operations in this clients such as Exadata Installation & PoC & Migration & Upgrade, Oracle & SQL Server Database Upgrade, Oracle RAC Installation, SQL Server AlwaysOn Installation, Database Migration, Disaster Recovery, Backup Restore, Performance Tuning, Periodic Healthchecks.I have done 2000+ Table replication with Goldengate or SQL Server Replication tool for DWH Databases in many clients.If you need Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS Consultancy and Training you can send my email adress mehmetsalih.deveci@outlook.com.Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS ve linux Danışmanlık ve Eğitim için  mehmetsalih.deveci@outlook.com a mail atabilirsiniz.

7 thoughts on “C# TA ABSTRACT CLASS VE INTERFACE KULLANIMI

  • July 29, 2010 at 9:22 pm
    Permalink

    Programlamada Abstract ve Interface çok daha detaylı kavramlardır 🙂 Bu konularda ön bilgiden ziyade biraz daha detaylı bilgiler verirsen daha iyi olur 😉

    Reply
  • July 30, 2010 at 9:05 am
    Permalink

    Olur Hasan Hocam Aslında Bazen Nabza Göre Şerbet vermek lazım geliyo bende onun için öncellikle nolduğunu anlattıktan sonra örnek verip bitiriyom Ama yakında Birazdaha ayrıntılı yazıp bol örnekli bir yazı yazacam!!!

    Reply
  • May 22, 2011 at 10:50 am
    Permalink

    Bu kodu nasıl cmd de calıstırıyoruz hocam ?
    Output ‘ta calısıyor

    Reply
    • May 22, 2011 at 11:04 am
      Permalink

      Cmd değil Visual Studionun Console ekranıdır..Outputla farkı yok…

      Reply
  • May 22, 2011 at 11:43 am
    Permalink

    Sağolun hocam
    Allah razı olsun, çalışmalarınızda başarılar dilerim kolay gelsin.
    Esen kalın…

    <3

    Reply
  • November 7, 2011 at 8:54 am
    Permalink

    Bu koddan bu çıktıyı mı aldınız yani? Bilmeyen biri için o açıklamaların nereden geldiği vs ne kadar kafa karıştırır değil mi?

    Reply

Leave a Reply to Yenercan Cancel reply

Your email address will not be published. Required fields are marked *