Bu konulara çok uzağım ve çok kolay olduğunun farkındayım fakat derslere gidemediğim için hiç bir şey öğrenemedim internetten çalışmayı denedim ama bu şekilde kaynaklar bulamadım lütfen yardımcı olun kurtulayım artık.
Öncelikle sanırım bu şekilde veya benzer şekilde sorular gelecek bu sorunun çözümünü ve benzer sorular içinde kaynak bilen varsa lütfen cevaplasınlar.
Soru: Personel isimli bir ana sınıfınız olacaktır. Bu sınıftan nesne türetildiğinde ekrana "üretim birimine hoşgeldiniz" yazacaktır. Personel sınıfının başka sınıflardan ulaşılamayan maas isimli tam sayı bir değişkeni olacaktır. Bu değişkene değer atabilmesi için kapsülleme ile ulaşım sağlanacaktır. Personel sınıfının "üretim" isimli bir özelliği olacaktır, geriye "makina" değerini döndürecektir ve bu özellik farlı sınıflarda farklı davranış sergileyecektir. Personel sınıfından "kadrolu" ve "taşeron" sınıfları türetilecektir. Bu sınıflarda "üretim" özelliği geriye kadrolu sınıfta "ana parça" ve taseron sınıfta "yedek parça" değerlerini döndürecektir. Form kısmında butona basılınca her iki sınıftanda nesne türetilecek ve kapsüllenen maas değişkenine kadrolu için 2500, taseron için 1500 değeri atanacaktır ve ekrana "2500 maaş alan kadrolu işçi ana parça üretti" ve "1500 maaş alan taşeron işçi yedek parça üretti" değerleri messageBox ile yazdırılacaktır.
Birde şu şekilde çıktı sorularının mantığını öğrenmeliyim. 1. örnek
class A { static A() { MessageBox.Show("A sınıfı"); } } class B:A{ static B(){ MessageBox.Show("B sınıfı"); } } class uygulama { private void button1_click(object sender, EventArgs e) { B b1 =new B(); } }
2. örnek benzeri
class A { public A() { MessageBox.Show("A sınıfı"); } } class B:A{ public B(int a){ MessageBox.Show("B sınıfı" +a); } } class esas { private void button1_click(object sender, EventArgs e) { B y =new B(5); } }
3. örnek
class A { public int a=10; } class B:A { public new int a=20; } class esas { private void button1_click(object....) { B nesne =new B(); MessageBox.Show(nesne a.ToString(); } }
class Personel { public Personel() { Console.Writeline("Üretim birimine hoşşgeldiniz"); } private int _maaş; public int Maaş{get{return _maaş;}set{_maaş=value;}} public virtual string Üretim() { return "Makina"; } } class Taşeron:Personel { public override string Üretim() { return "Yedek Parça"; } } class Kadrolu { public override string Üretim() { return "Ana Parça"; } } public class Form1:Form { void button1_click(object o,EventArgs e) { var q=new Kadrolu(); q.Maaş=2500; var w=new Taşeron(); w.Maaş=1500; MessageBox.Show(q.Maaş.ToString()+" maaş alan kadrolu işçi "+q.Üretim()+" üretti.); MessageBox.Show(w.Maaş.ToString()+" maaş alan taşeron işçi "+w.Üretim()+" üretti.); } }