Nesne Yönelimli Programlama II

Nesne Yönelimli Programlama II

Sınıflar ve Nesneler

Sınıf ve Nesne terimleri kimi zaman birbirlerinin yerine kullanılırlar. Fakat sınıflar, nesnelerin tipi şeklinde ifade edilir ve nesneler bu sınıfın örnekleridir. Buradan anlaşılacağı üzere bir nesne oluşturma işlemine örnekleme denir. Blueprint mantığını kullanır, bir sınıf blueprinttir ve nesne o blueprintten oluşturulan binadır. Bir sınıf tanımlamaya örnek;

class Product

{

}

 

Yapılar(Structures)

VB ve C#, Yapılar(Structures) diye adlandırılır ve sınıf benzeri bir mimariye sahiptirler. Büyük bir nesneler dizisi yaratmaya ihtiyacınız olduğunda ve bunun için çok fazla bellek harcamak istemediğinizde Yapıları kullanabilirsiniz. Constructor ile karıştırmayın, tamamıyla farklı bir öğedir. Örnek;

struct People

{

}

 

Sınıf Üyeleri(Class Members)

Her sınıf farklı sınıf üyelerine sahip olabilir. Bu üyeler farklı sınıflar ve nesneler arasında iletişimi sağlayan olaylar, metotlar ve sınıf verilerinin yazıldığı-okunduğu propertylerdir.

Propertyler ve Fieldlar

Field ve propertye nesnenin içerdiği verinin saklandığı öğelerdir. Fieldlar, değişkenler gibi davranırlar çünkü direk olarak okunabilirler ya da yazılabilirler. Örnek;

class Product

{

public string productName;

}

 

Propertyler get ve set prosedurlerine sahiptir. Bu prosedurler değerlerin nasıl yazılacağı ya da okunacağı üzerine daha çok kontrol sağlarlar.

C# ve VB propertynin değerini saklayabilmemiz için private fieldlar oluşturmamıza izin verirler ya da otomatik eklenmiş property diye adlandırılan özellikten yararlanabiliriz. Bu özellik fieldı otomatik olarak yaratır. Bu fieldkar, propertylerin temel mantığa sahip olurlar. Örnek otomatik eklenmiş bir property;

public int ProductId

{

get;

set;

}

 

Eğer property değerini yazma ve okuma için ek olarak başka operasyonlar gerçekleştirmeniz gerekirse, property değerini saklamak için bir field tanımlayın ve saklama ve geriye değer döndürme için temel mantığı kullanın. Örnek;

class Product

{

public int _ProductId;

public int ProductId

{

get { return _ProductId; }      // Field içinde saklanan veriyi geri döner.

set { _ProductId = value; }     // Fielda veriyi yazar.

}

}

 

Propertyler set ve get metotlarına sahip olabilirler. Ayrıca sadece okunabilir ya da sadece yazılabilir propertyler de oluşturabilirsiniz.

Metot

Metot bir nesnenin gerçekleştirebileceği eylemdir.

class Product

{

public int AddProduct(Product product)

{

// Kod

}

}

 

Bir sınıf aynı metodun birden çok overloadına(aşırı yüklenici) sahip olabilir. Bu metotların parametre tipleri veya parametre sayıları farklı olmalıdır.

class Product

{

public int UpdateProduct(Product product)

{

// Kod

}

 

public int UpdateProduct(int statu)

{

// Kod

}

}

 

Çoğu zaman metotları bir sınıfın içinde oluştururuz fakat “eklenti metotlar” dediğimiz bir sınıfın dışında da oluşturulabilen metotlar bulunur.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir