10. SınıfBilişim Teknolojileri

Sınıf Tanımlama

Bilişim Teknolojileri · 10. Sınıf · Sınıf ve Nesne

Konu Anlatımı

Nesne Nedir, Sınıf Neden Gereklidir?

Bilişim sistemlerinde anahtar, yönlendirici, yazıcı, kullanıcı kaydı ve log dosyası gibi her varlığın programda bir karşılığı vardır; bu karşılığı düzenli temsil etmenin yolu sınıftır. Sınıf, nesnelerin kalıbıdır ve yalnızca tarif eder; nesne ise o kalıptan new operatörüyle üretilen somut örnektir. Sınıf sayesinde cihaz bilgisi, o bilgiyi doğrulayan kurallar ve o bilgiyle yapılan işlemler tek çatı altında toplanır; böylece kod tekrarlanmaz ve hata noktası tek yerde toplanır.

1. Sınıf Tanımı ve Üyeler

Bir sınıf iki tür üye barındırır. Veri üyeleri (alan ve özellikler) nesnenin durumunu tutar: IP adresi, MAC adresi, marka, model ve bağlı olduğu switch portu. Üye metotları ise bu durum üzerinde yapılan işlemleri tanımlar: adres doğrulama, porta bağlama ve bilgiyi listeye yazdırma. Özellikler, alana erişimi saran okuyucu ve yazıcı bloklarıdır; alan genellikle private, özellik public yapılır.

Üye TürüGöreviÖrnek
AlanNesnenin durumunu tutar, doğrudan dışarı açılmazipAdresi, macAdresi, portNo
ÖzellikAlana denetimli erişim sağlarpublic string IpAdresi { get; set; }
Metotİşlem tanımlarbool AdresGecerliMi()
Statik üyeSınıfa aittir, nesne gerekmeden çalışırstatic int cihazSayisi

2. Erişim Belirleyicileri ve Kapsülleme

Erişim belirleyicisi hangi kodun üye okuyabileceğini belirler. private yalnızca tanımlandığı sınıf içinden, internal aynı derleme (montaj) içindeki her yerden, protected sınıftan türeyen sınıflardan, public ise programın her yerinden erişime açıktır. Kapsülleme, veriyi private tutup dışarıya yalnızca gerekli arayüzü açmaktır; böylece 0 dışındaki IP oktetleri, 48 bitten uzun MAC değerleri gibi geçersiz veriler sınıfın dışında engellenir.

3. Nesne Üretimi ve this Göstergesi

new operatörü sınıfın kalıbından bellekte bir nesne üretir ve o nesnenin adresini döndürür. Her nesnenin kendi kopyası olan alanları vardır: üç cihaz nesnesi oluşturulursa üç ayrı IP alanı bellekte durur. Yapıcı içinde parametre adı ile alan adı aynı yazıldığında this göstergesi hangi nesneye ait olduğunu belirtir ve karışıklığı önler. static alan ise tüm nesneler arasında ortaktır, örnek olarak cihaz sayacı buna örnektir.

4. Adım Adım: Cihaz Envanter Sınıfı Kurma

Sınıf tasarımı beş adımda tamamlanır; adımlar atlandığında kapsülleme ve doğrulama kaybolur.

  1. Sınıfın adı ve barındıracakları yazılır: BilgiIslemCihazi sınıfında ipAdresi, macAdresi ve portNo alanları tanımlanır.
  2. Alanlar private, dışarı açılacak bilgiler public özellik olarak yazılır.
  3. Adres yazıcı özelliğinde geçersizlik durumunda değer reddedilir (0-255 dışı oktet kabul edilmez).
  4. new BilgiIslemCihazi ile nesne üretilir ve alanlara değerler özellik üzerinden atanır.
  5. Statik cihaz sayacı her üretimde bir artırılıp okuyucu özellikten sorgulanır.

5. Sınav ve Saha Odaklı Notlar

Sınavda en sık erişim belirleyicilerinin kapsamları sorulur. Ezber yerine daire genişliği düşünülür: private sınıf içi, internal derleme içi, protected türeyenler, public sınırsız. private alana sınıf dışında erişim denenirse bu bir çalışma zamanı hatası değil, derleme zamanı hatasıdır; kod hiç çalışmaya başlamaz.

Sahada sınıf tasarımının karşılığı envanter tutarlılığıdır. IP ve MAC bilgilerinin tek bir sınıfta doğrulanması, hatalı kaydın sisteme girmesini engeller. MAC adresi 48 bit yani 6 bayttır ve onaltılık gösterimde 12 haneyle yazılır; bu değerler alan içinde tutulurken uzunluk denetimi sınıfın işidir, formun değil.

Ne Öğreneceğiz

Sınıf, üye, nesne ve erişim belirleyicisi kavramlarını cihaz envanteri örneğiyle anlatan temel yapı konusudur. Bu konuda ögrenme çıktıları:

Ön Bilgi

Bu konuya başlamadan önce temel kavram ve ön koşulları kavramanız yardımcı olacaktır. Konunun çerçevesinde şu kavramlar dikkat ister:

Basit Örnek ve Günlük Yaşam

Günlük yaşamda ve mesleki bağlamda bir uygulama:

Soru: BilgiIslemCihazi sınıfında ipAdresi adlı bir alan tanımlayıp bu sınıftan bir nesne üretmek ve adrese değer vermek isteniyor. Adımları yazınız.

  1. Adım 1: class BilgiIslemCihazi kalıbı açılır ve içine private string ipAdresi alanı yazılır.
  2. Adım 2: Alana değer verebilmek için public IpAdresi özelliği eklenir.
  3. Adım 3: BilgiIslemCihazi cihaz = new BilgiIslemCihazi(); ile nesne üretilir.
  4. Adım 4: cihaz.IpAdresi = 192.168.1.20 satırıyla özellik üzerinden değer atanır.

Sonuç/cevap: Cevap: Sınıf tanımlanır, new ile nesne üretilir ve değer public özellik üzerinden atanır; alanın kendisine sınıf dışından erişilemez.

İleri Örnek

Daha ileri bir uygulama:

Soru: Laboratuvar envanterinde toplam cihaz sayısını static alanla tutan bir sınıf tasarlanacak. Beş cihaz kaydedilip ikisi silindiğinde sayının okunması nasıl yapılır?

  1. Adım 1: static int cihazSayisi alanı tanımlanır, bu alan tüm nesneler ortaktır.
  2. Adım 2: Kayıt ekleme metodunda sayaç bir artırılır: beş kayıtta değer 5 olur.
  3. Adım 3: Kayıt silme metodunda sayaç bir azaltılır: iki silmede değer 3 olur.
  4. Adım 4: Değer BilgiIslemCihazi.CihazSayisi biçiminde nesne üretmeden okunur.

Sonuç/cevap: Cevap: Sayaç 5 − 2 = 3 kalır ve statik üye olduğu için sınıf adıyla, nesne üretmeden okunur.

Karşılaştırma Tablosu

KavramAçıklama
Alan adı ile özellik adı aynı olabilir; Alan adı ile özellik adı aynı olabilir; this kullanıldığında karışıklık yaşanmaz.
private alan dışarıdan doğrudan değiştirprivate alan dışarıdan doğrudan değiştirilemez, bu yüzden veri doğrulaması sınıfta kalır.
Statik üye tüm nesneler arasında ortaktıStatik üye tüm nesneler arasında ortaktır; cihaz sayacı gibi sayaçlar buna uygundur.
new operatörü bellekte alan ayırır ve dönew operatörü bellekte alan ayırır ve dönen değer nesnenin adresidir.
internal erişim yalnızca aynı derleme (minternal erişim yalnızca aynı derleme (montaj) dosyası içinde geçerlidir.
Sınıf adı nesne adından ayrılır: BilgiIsSınıf adı nesne adından ayrılır: BilgiIslemCihazi bir kalıp, labAnkastre bir nesnedir.

Sık Yapılan Hatalar

private alanı dışarıdan doğrudan atamak: private alan sınıfnın kendi dışından okunamaz ve yazılamaz, erişim public özellik üzerinden verilir.

Alan ile özelliği aynı erişimde tutmak: Alanı da public yapmak kapsüllemeyi kaldırır, geçersiz IP ve MAC değerleri sınıfa girer.

Statik üyeyi nesne üzerinden okumaya çalışmak: static üye sınıf adına bağlıdır, okuma sınıf adıyla yapılır.

new ile üretilen nesneleri aynı sanmak: İki new çağrısı iki ayrı nesne ve iki ayrı alan kümesi üretir, alanlar ortak değildir.

Sınıf adını dosya adıyla karıştırmak: Dosyanın adı sınıfın adını zorunlu kılmaz; derleyici için belirleyici olan sınıf tanımıdır.

Özet

Bu konuda sınıf kalıbı ile nesne örneği arasındaki ayrım, üye türleri ve erişim belirleyicileri ele alındı. Kapsüllemenin private alan ve public özellik ile kurulduğu, geçersiz IP ve MAC değerlerinin bu denetimle engellendiği gösterildi. new operatörünün nesne üretimi, this göstergesinin ayırt edici rolü ve static üyelerin nesneden bağımsız davranışıyla envanter sayacının nasıl tutulduğu örneklerle pekiştirildi.

Kendini Dene

Soru: Bilgi işlem odası için Cihaz adlı bir sınıf tasarla: IP ve MAC bilgilerini tutan private alanlar, bu alanlara erişim sağlayan public özellikler ve cihaz sayısını izleyen static sayaç bulunsun. Ardından alanların neden private olduğunu açıkla.

Örnek cevap: Puanlama anahtarı: Private alanlar ve public özellikler doğru biçimde tanımlanır (5 puan); Özelliklerde oktet değeri 0-255 dışındaysa reddetme kontrolü yapılır (4 puan); Static sayacın tüm nesneler arasında ortak olduğu ve sınıf adıyla okunduğu belirtilir (3 puan); Private alan kullanılmasının veriyi dış müdahaleden koruduğu iki cümleyle gerekçelendirilir (3 puan).

Sınıf Tanımlama — Sık Sorulan Sorular

Nesne Nedir, Sınıf Neden Gereklidir?

Bilişim sistemlerinde anahtar, yönlendirici, yazıcı, kullanıcı kaydı ve log dosyası gibi her varlığın programda bir karşılığı vardır; bu karşılığı düzenli temsil etmenin yolu sınıftır. Sınıf, nesnelerin kalıbıdır ve yalnızca tarif eder; nesne ise o kalıptan new operatörüyle üretilen somut örnektir. Sınıf sayesinde…

Sınıf Tanımlama nedir?

Bilişim sistemlerinde anahtar, yönlendirici, yazıcı, kullanıcı kaydı ve log dosyası gibi her varlığın programda bir karşılığı vardır; bu karşılığı düzenli temsil etmenin yolu sınıftır. Sınıf, nesnelerin kalıbıdır ve yalnızca tarif eder; nesne ise o kalıptan new operatörüyle üretilen somut örnektir. Sınıf sayesinde…

Sınıf Tanımlama konusunda ne öğrenilir?

Alan adı ile özellik adı aynı olabilir; this kullanıldığında karışıklık yaşanmaz.

Sınıf Tanımlama konusunda sık yapılan hatalar nelerdir?

private alanı dışarıdan doğrudan atamak: private alan sınıfnın kendi dışından okunamaz ve yazılamaz, erişim public özellik üzerinden verilir. Alan ile özelliği aynı erişimde tutmak: Alanı da public yapmak kapsüllemeyi kaldırır, geçersiz IP ve MAC değerleri sınıfa girer.

Sınıf Tanımlama için hangi formüller ve kurallar kullanılır?

Sınıf kalıptır, nesne new ile üretilen örnektir; her nesnenin alanlarının kendi kopyası vardır. · Erişim halkası: private sınıf içi → internal derleme içi → protected türeyenler → public her yer. · Kapsülleme: private alan + public özellik = denetimli erişim ve geçersiz veri engeli. · MAC adresi 48 bit = 6 bayttır…

Sınıf Tanımlama Kazanımları

Örnek Sorular ve Çözümleri

Örnek Soru 1 kolay

Sınıf kalıbından new operatörüyle üretilen somut örneğe ne ad verilir?

  1. A) Nesne
  2. B) Metot
  3. C) Değişken
  4. D) Derleme
Cevabı göster

Doğru cevap: A) Nesne

Sınıf kalıptır, new ile üretilen örnek nesnedir; metot işlem, değişken veri saklama, derleme ise kodu koda çevirme işlemidir.

Örnek Soru 2 orta

Cihaz sınıfındaki sayaç tüm nesneler arasında ortak olacaksa hangi biçimde tanımlanmalıdır?

  1. A) private alan
  2. B) yerel değişken
  3. C) parametre
  4. D) static alan
Cevabı göster

Doğru cevap: D) static alan

static alan kavramı Sınıf Tanımlama konusunun temel bir kavramıdır. Detaylar konu anlatımında verilmiştir.

Örnek Soru 3 zor

new BilgiIslemCihazi() ifadesi çalıştığında ne gerçekleşir?

  1. A) Sınıf tanımı bir kez daha derlenir
  2. B) Dosya diske yazılır
  3. C) Bellekte yeni bir nesne üretilir ve adresi döner
  4. D) Statik alanlar silinir
Cevabı göster

Doğru cevap: C) Bellekte yeni bir nesne üretilir ve adresi döner

new operatörü bellekte alan ayırır, alanlara ilk değerlerini verir ve nesnenin adresini döndürür; her çağrı ayrı bir nesne üretir.

Sıradaki adım

Konu anlatımları hesapsız okunur. Quiz, slayt ve deneme için hesap gerekir.

DersTeders ile devam et

Bilişim Teknolojileri için çalışma yolu

  1. OkuKonu anlatımını bu sayfada bitir.
  2. Soru çözÖrnekleri çöz, cevabı açıklamayla karşılaştır.
  3. Quiz ile pekiştirHesapla kendini ölç.

Slaytla adım adım öğren · Tüm dersler · Ana sayfa

Hesap açTüm dersleri keşfet

Konu anlatımları hesapsız okunur; quiz, slayt ve deneme için hesap gerekir.

Bu sayfa Sınıf Tanımlama konusunun anlatımını, kazanımlarını ve örnek sorularını içerir. Konuyla ilgili tüm sorular için testi çöz, diğer konular için DersTeders ana sayfasına geçebilirsin.

Bu konunun öğretmen materyallerini (ders planı, çalışma kâğıdı, çözümlü soru bankası, rubrik) yazdırabilirsin: Yazıcı çıktısı modülünü aç