Parametreli yapıcı
Parametre alan yapıcılarla nesneyi başlatmayı öğrenirsin.
Parametreli yapıcı
Yapıcı metotlar parametre alabilir. Böylece nesneyi üretirken başlangıç değerlerini dışarıdan verebilirsin: public Car(string make) { Make = make; }.
Çağrı da parametre içerir: new Car("Toyota"). Burada "Toyota" değeri yapıcıya make parametresi olarak geçer ve Make özelliğine atanır. Parametreli yapıcı, nesneyi oluşturduğu an geçerli duruma getirir; ayrı atama satırları gerekmez.
Birden fazla parametre
Yapıcı birden çok parametre alabilir; virgülle ayrılırlar: public Car(string make, string model, int year). Çağrı da aynı sırada değer verir: new Car("Toyota", "Corolla", 2020).
Sıra önemlidir: ilk değer make'e, ikinci model'e, üçüncü year'a gider. Yan sıra yanlış değerlerin gitmesine yol açar. Çok parametreli yapıcılarda isimleri anlamlı tutmak, karışıklığı önler.
Uygulama Car sınıfına parametreli yapıcı ekle
Car sınıfına public string Make { get; set; }, public string Model { get; set; } ve public int Year { get; set; } özelliklerini ekle. Ardından üç parametreli yapıcı tanımla ve gövdede her parametreyi ilgili özelliğe ata. Main içinde new Car("Toyota", "Corolla", 2020) ile örnek oluştur ve Make'i yazdır.
Örnek çözümü göster
Üç özellik ve üç parametreli yapıcı tanımla. Main içine Car c = new Car("Toyota", "Corolla", 2020); Console.WriteLine(c.Make); yaz.
Örnek çözüm:
using System;
class Car
{
public string Make { get; set; }
public string Model { get; set; }
public int Year { get; set; }
public Car(string make, string model, int year)
{
Make = make;
Model = model;
Year = year;
}
}
class Program
{
static void Main()
{
Car c = new Car("Toyota", "Corolla", 2020);
Console.WriteLine(c.Make);
}
}
Kendini test et
-
Parametre bildirimini tamamla
public Car(string ____) { Make = make; }Cevabı göster
public Car(string make) { Make = make; } -
Hangisi parametreli yapıcı çağrısıdır?
public Car(string make, string model, int year) { ... }- new Car("Toyota", "Corolla", 2020)
- new Car()
- new Car[]
- Car()
Cevabı göster
new Car("Toyota", "Corolla", 2020) — Doğru. Üç argüman, üç parametreye sırayla geçer.
-
Parametreyi türüne eşle
- string make
- Metin
- int year
- Tam sayı
- decimal price
- Ondalıklı sayı
- bool active
- Doğru/yanlış