Yazarlar Sözlük Makaleler Yardım Masası Gözlük Forum İstatistik

Tüm Başlıklar XML

1.  interface özelliklerinin ve metodlarının dışsal olarak implemente edilmesidir. interface üyelerine ayrıca interface ismi kullanılarak ulaşılır. kod yazarken tek farkı interface üyelerinden önce interface isminin yazılmasıdır.

public interface IShape{
    void Draw(Graphics g);
    Size size {get; set;}
    Location location {get; set;}
}

//explicit implementation
public class Circle : IShape {
    private Size fSize = new Size();
    private Location fLocation = new Location(0, 0);
    void IShape.Draw(Graphics g){
        //
    }
   
    Size IShape.size {get{ return fSize; } set{ fSize = value; }}
    Location IShape.location {get{ return fLocation; } set{ fLocation = value; }}
}

yukarıdaki örnekte Shape sınıfının üyelerine ulaşmak için

Shape.IShape.Draw(g);
Shape.IShape.size
Shape.IShape.location

kodunu kullanabiliriz.
bateristt
06 Ağustos 2005 12:22 ~ 06 Ağustos 2006 13:22
2.  bkz: interface implementation
bkz: implicit implementation
bateristt
06 Ağustos 2005 12:23
3.  explicit implementation, kavramını apaçık gerçeklemek veya belirgin gerçeklemek şeklinde çevirmek daha doğru olur diye düşünüyorum.

Kullanım alanları:
1. Bir sınıf için gerçeklediğimiz iki interface olabilir, bunlardaki fonksiyon isimlerini belirlemek her zaman bizim elimizde değil. Böylece farklı interfacelerdeki aynı isimli fonksiyonlar için ayrı ayrı gerçekleme yapabiliriz.

2. Mesela tipli collectionlarımız olabilir, KareCollection, ÜçgenCollection, ve bu collectionların Item(int index) diye metodları olsun. Collectionlar tipli olduğu için ÜçgenCol.. daki item fonksiyonu üçgen, karecoll.. daki kare dönderecek. Oysa bazı yerlerde biz bu collectionları tipsiz kullanmak isteyebiliriz. Eğer bu collectionlar IMyCollection interface ini implement ederse bunu sağlayabiliriz, tabi bu interface içindeki metodun ismi 'object Item(int index)' olursa ne olacak, işte o zaman gerçeklerken IMyCollection.Item(... şeklinde gerçekleriz. Böylece sınıfımızda dönüş tipi farklı ama aynı isimli iki metod olabilir.
kar
10 Mayıs 2006 12:20
Bu konuda bildiklerinizi bizlerle paylaşabilirsiniz
Tabi bunun için yazarsanız giriş yapmalı, yazar değilseniz yazar olmalısınız.


Bu başlığa bkz veren girişlerin başlıkları nedir?

Bu başlığa bkz veren girişler başka hangi başlıklara bkz verdiler?
© 2005, Bilişim Kulübü. (1093 ms)
Ne yapabilirsin: SubtitleClick ile İngilizceni Geliştir, Çınar Framework ile kod yaz, Eglencelik.org'ta biraz eğlen