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 [email protected] 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

About Mehmet Salih Deveci

I am Founder of SysDBASoft IT and IT Tutorial and 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 [email protected].-                                                                                                                                                                                                                                                 -Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS ve linux Danışmanlık ve Eğitim için  [email protected] a mail atabilirsiniz.

13 comments

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

  2. 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!!!

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

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

    <3

  5. 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?

  6. İplemente nedir ya kamil, bari ingilizce yazıyorsun doğru yaz, yoksa türkçe yaz. 😀

  7. iğrenç bir makale olmuş, ulan bi öğrenemediniz şu işi, bide bilg muh yazmışın oraya 🙂

  8. Gerçekten kötü ve bilmeyen biri için çok kafa karıştırıcı

  9. hocam kusura bakma ama kimse de dememiş ki interface zaten public’tir.Herhangi bir Access Modifier (private,public,protected vs.) alamaz

  10. Çok basit ve çok açıklayıcı bir anlatım olmuş teşekkürler.

  11. Black on black in the Charg I’m creepin’ Rub me the right way, you might get a genie B.o.B, black Houdini

Leave a Reply

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