Kalıtım (Miras Alma- Inheritance) C# Ders 57

Kalıtım (Miras Alma- Inheritance) C#

Daha fazla bilgi için : www.gorselprogramlama.com

Kalıtım : Bir sınıfın tüm özellik ve metotlarının miras olarak alınmasıdır. Kullanım:

class Myclass

{

Kodlar;

}

class mirasci:Myclass

{

Kodlar;

}

Yukarıdaki kullanımda mirasci sınıfı Myclass’ın tüm metot ve özelliklerini kullanabilir ve ayrıca kendisine has metot ve özellik oluşturabilir.Ama mirasci sınıfının oluşturduğu metot ve özellikleri Myclass kullanamaz.

Örnek : İlk örnekte bir sinif oluşturalım ve bu sınıfı miras olarak alan yeni bir sınıf oluşturalım.

[code lang=”csharp”]

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace kalitim_ilk

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}//Daha fazla bilgi için : www.gorselprogramlama.com

private void button1_Click(object sender, EventArgs e)

{

Mirasci m = new Mirasci();

label1.Text = m.isimAlGonder(textBox1.Text);

}

}

}

class Isim

{

private string s;

public string isimAlGonder(string ad)

{

s = ad;

return s;

}//Daha fazla bilgi için : www.gorselprogramlama.com

}

class Mirasci : Isim

{

}

[/code]

Yukarıdaki kodlara baktığımızda mirasci sınıfı Isim sınıfının özelliklerini miras olarak almıştır.

Örnek : Şimdide mirascı sınıf içinde metotlar oluşturalım.Diktörtgenin alan ve çevresini hesaplayan ve gerekli labellere yazdıran programı sınıf kullanarak hazırlayalım.

[code lang=”csharp”]

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace kalitim

{//Daha fazla bilgi için : www.gorselprogramlama.com

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

Diktortgen d = new Diktortgen();

d.kenarlar(int.Parse(textBox1.Text), int.Parse(textBox2.Text));

label4.Text = d.kenarlarGoster();

label6.Text=d.alanHesapla().ToString();

label8.Text = d.cevreHesapla().ToString();

}

}//Daha fazla bilgi için : www.gorselprogramlama.com

}

class Kenar

{

protected int kkenar, ukenar;

public void kenarlar(int a,int b)

{

kkenar = a;

ukenar = b;

}

private string k;

public string kenarlarGoster()

{

k = "a = "+kkenar.ToString() + " "+"b = " + ukenar.ToString();

return k;

}

}//Daha fazla bilgi için : www.gorselprogramlama.com

class Diktortgen :Kenar

{

private int sonuc;

public int alanHesapla()

{

sonuc = ukenar * kkenar;

return sonuc;

}

public int cevreHesapla()

{

sonuc = 2 * (ukenar + kkenar);

return sonuc;

}

}//Daha fazla bilgi için : www.gorselprogramlama.com

[/code]

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir