Class Kullanımı


Class Kullanımı
public partial class Form1 : Form
{
    Arac arac;  // Sınıf seviyesi değişken

    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        arac = new Arac();
        arac.Model = "Toyota Corolla";
        arac.Plaka = "34ABC123";
        arac.Km = 123456;
        arac.BilgiYaz();

    }
    public class Arac
    {
        public string Model;
        public string Plaka;
        public int Km;

        public void BilgiYaz()
        {
            MessageBox.Show($"Model: {Model}nPlaka: {Plaka}nKM: {Km}");
        }
    }
}



Erişim Belirleyiciler (access Modifiers)

.NET platformunda oluşturulan uygulamalarda güvenliği artırmak amacıyla sınıflara ve/veya sınıf içinde kullanılan ögelere erişimin kısıtlanması gerekir. Dolayısıyla koda dışarıdan erişimi

 

 

n sınırlarını belirlemek amacıyla erişim belirleyicileri kullanılır.

C# programlama dilinde kullanılan erişim belirleyicileri şunlardır:

public (Genel) Public olarak tanımlanan ögeler üzerinde herhangi bir kısıtlama yoktur. Her yerden erişilebilirdir.
private (Gizli) En katı erişim belirleyicidir. Ögeler sadece tanımlandığı sınıf içinde erişilebilirdir. Bir başka deyişle ögeler sadece tanımlandığı küme parantezleri arasında kullanılabilir.
protected (Korunumlu) Ögeler, bulunduğu sınıf içinde ya da bu sınıftan türeyen diğer sınıflarda erişilebilirdir.
internal (Dâhilî) Internal olarak tanımlanan ögelere sadece aynı program içinden erişilebilir.
protected internal (Dâhilî+Korumalı) Ögeler hem protected hem de internal erişim belirleyicisine sahip olarak değerlendirilir. Türetilen sınıfın farklı program içinde olması sorun teşkil etmez.

Örnek
using static WinFormsApp1.Class1;

namespace WinFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Manav mnv = new Manav();

            MessageBox.Show("Sepet Toplamı: " + mnv.Toplam());

            MessageBox.Show(mnv.Sepet());

            mnv.Yelma = 100;

            MessageBox.Show("" + mnv.Yelma);

            MessageBox.Show("Sepet Toplamı: " + mnv.Toplam());
            
            MessageBox.Show(mnv.Sepet());
        }
    }
}
manav.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WinFormsApp1
{
    internal class Class1
    {
        public class Manav
        {
            int Eadet = 4, Aadet = 6, Madet = 8, Kadet = 2;

            private int Elma = 10;
            private int Armut = 20;  //public int Armut = 20;
            private int Mandilina = 25;
            private int Karpuz = 50;


            public int Yelma
            {
                get { return Elma; }
                set
                {
                    this.Elma = value;
                }
            }

            public int Toplam()
            {
                int Toplam = (this.Elma * Eadet) + (this.Armut * Aadet) + (this.Mandilina * Madet) + (this.Karpuz * Kadet);
                return Toplam;
            }
            public String Sepet()
            {
                return "Sepetinizn" + Eadet + " Adet Elma n " + Aadet + " Adet Armut n " + Kadet + " Adet Karpuz n " + Madet + " Adet Mandilina";
            }
        }
    }
}


Örnek
EkKlas.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WindowsFormsApp27
{
    internal class EkKlas
    {

        public int BanaHerYedenUlasilir = 1;
        private int BanaSadeceBuKlasstanErisilir = 1;
        protected int BanaSadeceBuKlasinEklendigiKlastanErisilir = 1;
        internal int BanaBuProjeIcindenkiHerHangiBirYerdenErisilir= 1;

        public EkKlas() //yapilandirici fonksiyon, bu nesneden obje olusunca bu otomatik calisicak
        {
            this.BanaSadeceBuKlasstanErisilir = 2;
            this.BanaSadeceBuKlasinEklendigiKlastanErisilir = 2;
            this.BanaBuProjeIcindenkiHerHangiBirYerdenErisilir = 2;
        }
    }
}

Form1.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApp27
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            EkKlas ObjeEkKlas = new EkKlas();

            ObjeEkKlas.BanaHerYedenUlasilir = 2;

            /*
            ObjeEkKlas.BanaSadeceBuKlasstanErisilir = 2; //private
            

            ObjeEkKlas.BanaSadeceBuKlasinEklendigiKlastanErisilir = 2; //protected
            */

            ObjeEkKlas.BanaBuProjeIcindenkiHerHangiBirYerdenErisilir = 2;
        }
    }
}

Örnek

Harici class dosyasını eklemek için

Class KullanımıekKlas.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApp29
{
    internal class EkKlas
    {
        private int Aci1, Aci2, Aci3;

        public int AciA
        {
            get { return Aci1; }
            set {
                if(value < 0)
                {
                    this.KucukSayiMesaj();
                    Aci1 = 0;
                    return;
                }

                Aci1 = value;
            }
        }

        public int AciB
        {
            get;
            set;
        }

        /*public int AciB
        {
            get { return Aci2; }
            set
            {
                if (value < 0)
                {
                    this.KucukSayiMesaj();
                    Aci2 = 0;
                    return;
                }
                Aci2 = value;
            }
        }*/

        public int AciC
        {
            get { return Aci3; }
            set
            {
                if (value < 0)
                {
                    this.KucukSayiMesaj();
                    Aci3 = 0;
                    return;
                }
                Aci3 = value;
            }
        }


        public void KucukSayiMesaj()
        {
            MessageBox.Show("Lütfen 0 dan küçük sayı girmeyiniz");
        }

        public int AcilarToplami()
        {
            return (this.Aci1 + this.AciB + this.Aci3);

        }

        public String IkizKenarMi()
        {
            if(this.Aci1 == this.AciB )
            {
                return "Evet";
            }
            else if(this.Aci1 == this.Aci3)
            {
                return "Evet";
            }
            else if(this.AciB == this.Aci3)
            {
                return "Evet";
            }
            else
            {
                return "Hayır";
            }
        }
    }
}
form.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApp29
{
    internal class EkKlas
    {
        private int Aci1, Aci2, Aci3;

        public int AciA
        {
            get { return Aci1; }
            set {
                if(value < 0)
                {
                    this.KucukSayiMesaj();
                    Aci1 = 0;
                    return;
                }

                Aci1 = value;
            }
        }

        public int AciB
        {
            get;
            set;
        }

        /*public int AciB
        {
            get { return Aci2; }
            set
            {
                if (value < 0)
                {
                    this.KucukSayiMesaj();
                    Aci2 = 0;
                    return;
                }
                Aci2 = value;
            }
        }*/

        public int AciC
        {
            get { return Aci3; }
            set
            {
                if (value < 0)
                {
                    this.KucukSayiMesaj();
                    Aci3 = 0;
                    return;
                }
                Aci3 = value;
            }
        }


        public void KucukSayiMesaj()
        {
            MessageBox.Show("Lütfen 0 dan küçük sayı girmeyiniz");
        }

        public int AcilarToplami()
        {
            return (this.Aci1 + this.AciB + this.Aci3);

        }

        public String IkizKenarMi()
        {
            if(this.Aci1 == this.AciB )
            {
                return "Evet";
            }
            else if(this.Aci1 == this.Aci3)
            {
                return "Evet";
            }
            else if(this.AciB == this.Aci3)
            {
                return "Evet";
            }
            else
            {
                return "Hayır";
            }
        }
    }
}
Örnek
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApp30
{
    public partial class Form1 : Form
    {

        MetinIslemleri MT = new MetinIslemleri();

        public Form1()
        {
            InitializeComponent();
        }

        private void textBox1_KeyUp(object sender, KeyEventArgs e)
        {
            MT.GelenMetin = textBox1.Text;

            label1.Text = MT.TersCevirici();
        }
    }
}
iremalic.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WindowsFormsApp3
{
    internal class iremalic
    {
        public string gelenmetin
        {
            get;
            set;
        }
        public string terscevir()
        {
            string yenimetin = "";
            for (int i = this.gelenmetin.Length - 1; i >= 0; i)
            {
                yenimetin += gelenmetin[i].ToString();
            }
            return yenimetin;
        }

        public string terscevir2(String YollananMetin)
        {
            string yenimetin = "";
            for (int i = YollananMetin.Length - 1; i >= 0; i)
            {

                if (i%2== 0)
                    yenimetin += YollananMetin[i].ToString().ToUpper();
                else
                    yenimetin += YollananMetin[i].ToString().ToLower();

            }
            return yenimetin;
        }
    }
}

 


 
Yükleniyor...
Yükleniyor...