C#'ta Template Class Özelliği Ne İşe Yarar?


Visual Basic ve .NET Framework    Visual Basic ve .NET Framework İle İlgili Paylaşım Kategorisi

Yazar: AlpBenjamins    1 Yorum    180 Görüntüleme
  • Derecelendirme: 0/5 - 0 oy

Paylaşım Tarihi: 31.01.2016, 17:39:29 #1
AlpBenjamins Cezalı Üye
Cezalı Üye
Status: Çevrimdışı Yorumları:269 Konuları:118 Kayıt Tarihi:28.11.2015

ALINTIDIR

Bu bölümde template class özelliğinin ne işe yaradığına değineceğim;

Template class yaygın bir kullanım şeklidir. Bunu bir örnekle açıklayalım; İnsanlar ve Arabalar şeklinde 2 sınıfımız olsun;

Ben bu iki sınıfı tek bir sınıf gibi kullanabilmem için template class oluşturmam gerekir. Örnek; 


Kod:
Kod:
Kod:

Kod:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Login<T>
   {
       public Login()
       {
        
       }
       public T properties { get; set; }
       public List<T> LoginValidate(params T[] U)
       {
           List<T> B = new List<T>();
           foreach(var p in U)
           {
           B.Add(p);
           }
           return B;
       }
   }





Yukarıdaki kodlar benim template class ım dır. 

Şimdi bununla kullanılacağım sınıflar;


Kod:
Kod:
Kod:

Kod:
1
2
3
4
5
6
7
8
9
10
11
class Users
   {
       public int UserId { get; set; }
       public string UserPass { get; set; }
       
       
   }
   class Arabalar
   {
       public int jipler { get; set; }
   }





şeklindedir. Artık bu 2 sınıfı;

Kod:
Kod:
Kod:

Kod:
1
2
3
4
5
6
7
Login<Users> log = new Login<Users>();
           var msn = log.LoginValidate(new Users { UserId =1 }, new Users { UserId = 1 });
           var get_msn = msn.Select(a => a.UserId).FirstOrDefault();

           Login<Arabalar> log2 = new Login<Arabalar>();
           var msn2 = log2.LoginValidate(new Arabalar { jipler = 1 }, new Arabalar { jipler = 2 });
           var get_msn_2 = msn2.Select(a => a.jipler).FirstOrDefault();

Son Düzenleme: 31.01.2016, 17:43:40, Düzenleyen: Retribution.

Paylaşım Tarihi: 31.01.2016, 17:40:05 #2
ErdemMH .
Süper Üye
Status: Çevrimdışı Yorumları:649 Konuları:123 Kayıt Tarihi:10.12.2015 Rep Puanı: 224

Konu başlıklarını doğru aç nerdeyse hepsi alıntı.Böyle devam edersen banlanacaksın.

Kullanıcı İmzası
Resim http://49.media.tumblr.com/a410c087590891fc6b1a319ada18acba/tumblr_mwh8fc9NX81s0twoeo1_r3_400.gif

Resim http://i.hizliresim.com/L15Y7b.jpg










Aradığınızı Bulamadınız Mı ?

Konuyu Okuyanlar:
1 Ziyaretçi