Alanlar
Cup sınıfının içine fill adlı bir int alanı koyun. Pine içinde Main'i tutun ve Cup c = new Cup(); ile bir cup kurun, c.fill = 3; ile bir sayı saklayın, sonra Console.WriteLine(c.fill); ile o alanı yazın. Her iki türü aynı öğretim dosyasında tutun; böylece dotnet run sade kalır. dotnet run ile çalıştırın. Ekran tek satır göstermelidir: 3. Alan veriyi o tek nesnede tutar. Nesneyi adlandıran değişken üzerinden ona ulaşırsınız. Nesnede o değeri saklamak ve okumak bu sayfanın öğrettiği şeydir. Başlangıç genel sınıf adını Pine tutun.
Nesnede veri için bir yer
Nesneler sayfasında beep yalnızca yazıyordu. Sonra için bir sayı tutmuyordu. Alan, sınıf içinde bildirilen bir addır; her nesne kendi değerini orada tutabilir. new nesneyi kurduktan sonra alanı nesne değişkeni üzerinden atarsınız, sonra ekrana yazabilirsiniz.
Pine dosyasını açın. Başlangıç sınıf adı Pine kalır. Bu sayfa başlatıcıyı yeniden adlandırmaz. Hâlâ Main'de tuttuğunuz her şey bir c.beep(); Chip çağrı kalıntısıysa silin. Artakalan her Chip sınıfını silin. Her ReadLine satırını silin. Tutacağınız dosyada yazı bekleyişi yoktur.
Pine'ın süslü parantezlerinin dışında — yine aynı dosyada — public class Cup yazın. Sınıf süslü parantezlerinin içinde bir alan satırı yazın: int fill;. Bu ilk kutuda metot yoktur. Bu sayfada Cup içinde Main yoktur. Çalıştırmadan önce dosyayı kaydedin.
İlk kutulu program yalnızca Cup'i gösterir; alanı temiz okuyasınız diye. İkinci kutulu program, Pine'ın fill'i atayıp yazdığı tutulan şekildir.
using System;
public class Cup
{
int fill;
}
Pine fill atar, sonra yazar
Pine public static void Main() tutmaya devam eder. Main içinde sırayla üç satır yazın: Cup c = new Cup();, sonra c.fill = 3;, sonra Console.WriteLine(c.fill);. İlk satır nesneyi kurar. İkinci satır 3'ü o nesnenin fill'ine saklar. Üçüncü satır saklanan sayıyı yazar. Bu sayfada c.beep(); çağırmazsınız. O, nesneler dersiydi.
using System;
public class Pine
{
public static void Main()
{
Cup c = new Cup();
c.fill = 3;
Console.WriteLine(c.fill);
}
}
public class Cup
{
int fill;
}
Tutulan dosyayı yukarıdan okuyun. using System; kısa adları hazırlar. public class Pine başlatıcıdır. public static void Main() çalışma zamanının başladığı yerdir. new Cup() bir nesne kurar ve onu c'ye koyar. c.fill = 3 ataması 3'ü o nesnenin alanına yazar. WriteLine(c.fill) aynı alanı okur ve 3 yazar. Ekrandaki sayı nesnede saklanan değerdir; "ok" gibi sabit kodlanmış bir dize yazısı değildir.
dotnet run ile çalıştırın. Program bir satır yazar ve durur. Sizin bir şey yazmanızı beklemez. dotnet run bekliyorsa dosyada hâlâ ReadLine vardır. O satırı silin; Pine'da yukarıdaki üç satırı tutun, fill alanı ise Cup içinde kalsın. Ekran 3 gösterir. Ekran ok gösteriyorsa artakalan bir c.beep(); çağrısı hâlâ çalışıyordur. Ekran Cup harflerini gösteriyorsa yazma satırında tırnak vardır: Console.WriteLine("Cup");. Yanlış satır gösteren bir ekran için .NET SDK'yı yeniden kurmayın.
Bir çalıştırmayı bir kez daha sırayla yürüyün. C# Pine.Main'den başlar. İlk ifade new Cup() ile bir nesne kurar ve onu c'ye koyar. İkinci ifade 3'ü c.fill'e saklar. Üçüncü ifade o alanı yazar. Sonra Main biter. Alan adı fill sınıfta bir kez bildirilmiştir. Cup'ten kurulan her nesne o ad için kendi yuvasını alır. c.fill yazdığınızda önce nesneyi adlandırır, sonra o nesnedeki yuvayı. Bu sıra — nesne, sonra alan — bu sayfanın tuttuğu şekildir.
Sınıf, nesne ve alan yan yana
Üç adı bir kez küçük bir tabloda okuyun. Bu sayfada alan satırı her zaman bir nesne üzerinden gider.
📊 class object field
| Name | What it is on this page |
|---|---|
Cup |
the class / type beside Pine |
c |
one object built with new Cup() |
c.fill |
the int stored on that object |
Nesne olmadan Cup.fill = 3; yazmak bu sayfanın başlangıç şekline uymaz. Alan, new sonrasında her nesneye aittir. Önce kurun, sonra değişken üzerinden atayın. Yalnız new Cup(); yazıp sonucu saklamamak da fill için ad bırakmaz. Tutun: Cup c = new Cup(); sonra c.fill = 3;.
Artakalan bir nesne demosu Main'i karıştırabilir. Hâlâ Chip sınıfıyla c.beep(); çağıran dosya önceki derstir. Bu sayfa için Cup ve Pine ile fill alanını tutun. Burada beep'e ihtiyacınız yoktur.
Yalnız Console.WriteLine(c); yazarsanız ekran temiz bir 3 göstermez. Varsayılan nesne metnini yazar. Saklanan sayıyı görmek için Console.WriteLine(c.fill); yazın.
İki cup ayrı fill tutar
Cup'ten iki nesne kurabilirsiniz. Her birinin kendi fill'i vardır. Birini değiştirmek diğerini değiştirmez.
Pine içinde Cup a = new Cup(); ve Cup b = new Cup(); yazabilir, sonra a.fill = 2; ve b.fill = 9; koyup a.fill ile b.fill yazabilirsiniz. dotnet run sonrasında ekran bir satırda 2, sonraki satırda 9 göstermelidir. Her iki nesne fill'i bildiren sınıf metnini paylaşır, ama her nesne kendi sayısını tutar.
İki farklı sayı istediğiniz halde her iki yazma aynı değeri gösteriyorsa, her iki alanı da atadığınızı ve Cup b = a; yazmadığınızı kontrol edin. O satır b'yi a ile aynı nesneye işaret ettirir; böylece her iki ad bir fill paylaşır. Bu sayfada iki ayrı fill istediğinizde iki new Cup() ifadesi kullanın.
O alıştırma için üçüncü bir kutulu programa ihtiyacınız yoktur. Pine'ı dikkatle düzenleyip yeniden çalıştırın. Sonra sınavın ilk şeklini istiyorsanız tek-cup kutusunu geri getirebilirsiniz.
Kurucular sonra ne ekler
Bu sayfa alanı new sonrasında ayrı bir satırla atar: c.fill = 3;. Sonraki sayfa — kurucular — nesne kurulurken başlangıç değerlerini koymanın başka bir yolunu gösterir. Burada düz alan ve new sonrası atamada kalın. Bu sayfada bir kurucu metot uydurmayın.
Hiç atamadığınız alanlar için varsayılan değerler vardır: bir int alanı 0'dan başlar. Herhangi bir atamadan önce c.fill yazarsanız ekran 0 gösterebilir. Bu sayfa hâlâ sizin yazdığınız atamayı öğretir; bu yüzden ana demoda yazmadan önce c.fill = 3; tutun.
Cup'i Pine'ın süslü parantezlerinin içine yuvalamayın. Bu sayfada iki sınıf dosyada kardeştir. Alan Cup içinde oturur. Main Pine içinde oturur. Derleme Pine'ı derlerken Cup'i bulamıyorsa, public class Cup'in aynı dosyada olduğunu kontrol edin. 3 beklerken ekran 0 gösteriyorsa atama satırı eksik olabilir veya yazmadan sonra çalışıyordur — c.fill = 3; satırını Console.WriteLine(c.fill); üstüne koyun.
Cup içinde int fill; bildirebilir, Cup c = new Cup(); ile kurabilir, c.fill = 3; atayıp Pine.Main'den c.fill yazabilirsiniz. dotnet run ile çalıştırın. Ekran 3 gösterir. İki nesne iki farklı fill tutabilir. fill'i, new ile kurduğunuz her cup üzerindeki etiketli bir yuva gibi düşünün. Pine, dotnet run ile açtığınız kapı olarak kalır. Sonraki sayfa kuruculardır; orada new nesneyi kurduğu anda değer koymaya başlarsınız.
🧠 Bilginizi Test Edin
Bilginizi Test Edin
Bu interaktif sınavla kendini test et ve konuyu ne kadar iyi anladığını gör
📝 Talimatlar
- Her soruyu dikkatle okuyun
- Her soru için en iyi cevabı seçin
- Quiz'i istediğiniz kadar tekrar alabilirsiniz
- İlerlemeniz üstte gösterilecek