// decimal tanimlanan degişken tam sayi ise birsey yazilmaz, virgullu sayi olursa miktarin sonuna 'm' harfi koymaliyiz ..!
static void Main(string[] args)
{
kitap ki = new kitap("wap", "wapper");
Console.WriteLine(ki.ekranaYazdir());
// constructer overloading edildi..!
kitap k2 = new kitap("wap", "wapper", "wappest", 100.1m);
Console.WriteLine(k2.yayinEvi+" " + k2.fiyat);
kitap k3 = new kitap("wap1" , "wap2" , 12);
Console.WriteLine(k3.ekranaYazdir());//this ile
}
}
class kitap
{
private string yazar;
private string isim;
public string yayinEvi;
public decimal fiyat;
public kitap(string Kisim, string kYazar)
{
isim = Kisim;
yazar = kYazar;
}
public kitap(string isim, string yazar, decimal fiyat)
:this(isim,yazar) //string string parametre alan degişkene gonderdik
// yapici metodlar için gecerlidir..!
{
this.fiyat = fiyat;
}
public kitap(string yazar, string isim, string yayinEvi, decimal fiyat)
{
this.fiyat = fiyat; // this ile bizim degişkenlerimizi belirtiriz..!
this.yazar = yazar; // geri kalan ise parametreleri belirtir..!!
this.yayinEvi = yayinEvi;
this.isim = isim;
}
public string ekranaYazdir()
{
return "isim = " + isim + " yazar " + yazar + " fiyat" + fiyat;
}
6 Ocak 2011 Perşembe
C# da Constructor'lar
Yeni oluşturduğumuz bir sinifin tanimlamalarini ( string isim , soyIsim ) gibi degerleri birer default deger tanimlamak için kullanilan bir yöntemdir en basiti ile , bunla beraber bir sürü daha özelligi vardir, bu özelliklere girilmeyecek şimdilik basitçe :
// yapici metodlarin geri donuşu yoktur
// yapici metodun ismi class ismi ile ayni olmalidir .!
class Program
{
static void Main(string[] args)
{
damacana d = new damacana();// default constructer'i caliştirir
Console.WriteLine(d.fiyat);
// 3 degişken alan constructeri caliştirir..!!
damacana d2 = new damacana(30, "kalabak", 13);
Console.WriteLine(d2.fiyat+" " +d2.marka+" "+d2.kapasite);
}
}
class damacana //varsayilan ( default ) yapici metod
{
public int kapasite;
public decimal fiyat;
public string marka;
public damacana()
{
fiyat = 50;
}
public damacana(decimal dfiyat,string dmarka,int dkapasite )
{
kapasite = dkapasite;
fiyat = dfiyat;
marka = dmarka;
}
}
// yapici metodlarin geri donuşu yoktur
// yapici metodun ismi class ismi ile ayni olmalidir .!
class Program
{
static void Main(string[] args)
{
damacana d = new damacana();// default constructer'i caliştirir
Console.WriteLine(d.fiyat);
// 3 degişken alan constructeri caliştirir..!!
damacana d2 = new damacana(30, "kalabak", 13);
Console.WriteLine(d2.fiyat+" " +d2.marka+" "+d2.kapasite);
}
}
class damacana //varsayilan ( default ) yapici metod
{
public int kapasite;
public decimal fiyat;
public string marka;
public damacana()
{
fiyat = 50;
}
public damacana(decimal dfiyat,string dmarka,int dkapasite )
{
kapasite = dkapasite;
fiyat = dfiyat;
marka = dmarka;
}
}
c# da params nedir ne işe yarar
C# da metot kullanimini daha bir genişletmek için kullanilan yöntemdir, şöyle ki : metodlara belirli sayida degişken ( parametre) gonderilir , fakat params içeren metodlar ise farkli sayida değişken göndermek mümkun kiliniyor,
class Program
{ // metoda gonderilecek degişkenlerin sayisi belli olmadigi zaman kullanilacak yöntemdir..!
static void Main(string[] args)
{
Program p = new Program();
Console.WriteLine(p.ortalamaHesap(1,3,4,5,7));
}
// kendi içerisinde bir dizi oluşturuyor onu diziye aktariyor
// double baslangic ve double a dizi dişina itiliyor
double ortalamaHesap( params double[] notlar)
{
double toplam = 0;
foreach (double sayi in notlar)
{
toplam += sayi;
}
return toplam / notlar.Length;
}
class Program
{ // metoda gonderilecek degişkenlerin sayisi belli olmadigi zaman kullanilacak yöntemdir..!
static void Main(string[] args)
{
Program p = new Program();
Console.WriteLine(p.ortalamaHesap(1,3,4,5,7));
}
// kendi içerisinde bir dizi oluşturuyor onu diziye aktariyor
// double baslangic ve double a dizi dişina itiliyor
double ortalamaHesap( params double[] notlar)
{
double toplam = 0;
foreach (double sayi in notlar)
{
toplam += sayi;
}
return toplam / notlar.Length;
}
Kaydol:
Yorumlar (Atom)