C # Kısmi Sınıf ve Kısmi Yöntem (Örneklerle)

Bu yazıda C # 'da kısmi sınıf ve kısmi yöntemlerin nasıl ve neden uygulanacağını öğreneceğiz.

Bir sınıf tanımını bölmeniz gerekebilecek birçok durum vardır, örneğin büyük ölçekli projeler üzerinde çalışırken, birden çok geliştirici ve programcının aynı anda aynı sınıfta çalışması gerekebilir. Bu durumda Kısmi Sınıf adlı bir özelliği kullanabiliriz .

Kısmi Sınıfa Giriş

C # (veya OOP) ile programlama yaparken, bir sınıfın tanımını iki veya daha fazla kaynak dosyaya bölebiliriz. Kaynak dosyalar, sınıf tanımının bir bölümünü içerir ve uygulama derlendiğinde tüm parçalar birleştirilir. Bir sınıf tanımını bölmek için partialanahtar kelimeyi kullanmamız gerekir .

Örnek 1:

HeightWeightInfoBoyu ve ağırlığı gösteren bir projemiz var .

File1.csRecord adlı kısmi bir sınıfa sahip olarak adlandırılmış bir dosyamız var . İki tamsayı değişkeni h & w ve h & w değerlerini atayan Record adlı bir yöntem / kurucu vardır.

 namespace HeightWeightInfo ( class File1 ( ) public partial class Record ( private int h; private int w; public Record(int h, int w) ( this.h = h; this.w = w; ) ) )

Burada, yalnızca PrintRecord yöntemine sahip olan aynı kısmi sınıfa sahip File2.cs adlı başka bir dosya var. Bu yöntem, h & w değerlerini gösterecektir.

 namespace HeightWeightInfo ( class File2 ( ) public partial class Record ( public void PrintRecord() ( Console.WriteLine("Height:"+ h); Console.WriteLine("Weight:"+ w); ) ) )

Şimdi burada projenin ana yöntemini görebiliriz:

 namespace HeightWeightInfo ( class Program ( static void Main(string() args) ( Record myRecord = new Record(10, 15); myRecord.PrintRecord(); Console.ReadLine(); ) ) )

Burada, 10 ve 15 olarak parametre değerlerini sırasıyla h ve w'ye içinde tanımlanan yönteme geçiren MyRecord olarak Record sınıfının nesnesine sahibiz File1.cs.

PrintRecord yöntemi, .mRecord dosyasında tanımlanan nesne tarafından çağrılır File2.cs.

Bu, partialanahtar kelimenin çeşitli dosyalarda tanımlanan bir sınıfın tüm özniteliklerinin tek bir sınıf olarak çalışacak şekilde birleştirilmesine yardımcı olduğunu gösterir .

Rehber partialsınıf kullanılabilir:

  1. Birden fazla geliştirici ile daha büyük projeler üzerinde çalışırken, geliştiricilerin aynı sınıf üzerinde aynı anda çalışmasına yardımcı olur.
  2. Kodlar, IDE tarafından otomatik olarak oluşturulan kaynak dosyaları (yani Visual Studio) yeniden oluşturmadan sınıfa eklenebilir veya değiştirilebilir.

Kısmi Sınıf Hakkında Hatırlanması Gerekenler

partialSınıfın diğer parçaları ad alanında tanımlanan edilebileceğini belirtmek için, anahtar. Bir sınıfı kısmi yapmaya çalışıyorsak kısmi anahtar sözcüğünü kullanmak zorunludur. Sınıfın tüm bölümleri aynı ad alanında olmalı ve derleme zamanında son türü oluşturmak için kullanılabilir olmalıdır. Tüm bölümler aynı erişim değiştiriciye sahip olmalıdır; ör. Özel, genel, vb.

  • Herhangi bir bölüm soyut olarak bildirilmişse, tüm tip soyut olarak kabul edilir.
  • Herhangi bir parçanın mühürlendiği beyan edilirse, tüm tip mühürlü kabul edilir.
  • Herhangi bir parça bir temel tip bildirirse, tüm tip bu sınıfı miras alır.
  • Kısmi bir tanımda bildirilen herhangi bir sınıf üyesi, diğer tüm parçalar için kullanılabilir.
  • Kısmi bir sınıfın tüm parçaları aynı ad alanında olmalıdır.

** Not:partial modifiye temsilci veya sıralama beyanlarına kullanılamaz

Kısmi Yöntemlere Giriş

Kısmi bir sınıf, kısmi bir yöntem içerebilir. Sınıfın bir bölümü yöntemin imzasını içerir. İsteğe bağlı bir uygulama aynı kısımda veya başka bir kısımda tanımlanabilir. Uygulama sağlanmadıysa, yöntem ve tüm çağrılar derleme zamanında kaldırılır.

Örnek 2:

InitializeCar (), BuildRim () ve BuildWheels () olmak üzere üç yöntemi olan kısmi bir sınıf olarak Cartanımlanmış bir örnek alalım file1.cs. Bu yöntemler arasında InitializeCar, olarak tanımlanır partial.

 public partial class Car ( partial void InitializeCar(); public void BuildRim() ( ) public void BuildWheels() ( ) )

Ayrıca file2.csBuildEngine ve InitializeCar adlı iki metodu olan başka bir dosyamız var . InitializeCar yöntemi, içinde tanımlanan kısmi bir yöntemdir file1.cs.

 public partial class Car ( public void BuildEngine() ( ) partial void InitializeCar() ( string str = "Car"; ) )

Kısmi yöntem bildirimi iki bölümden oluşur:

  1. Tanımı olduğu gibi file1.cs.
  2. Uygulama olduğu gibi file2.cs.

Kısmi sınıfın ayrı bölümlerinde veya aynı bölümde olabilirler.

Kısmi Yöntem hakkında hatırlanması gerekenler

  • partial anahtar kelime.
  • dönüş türü void .
  • dolaylı olarak private.
  • ve olamaz virtual.

Ilginç makaleler...