<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Yılmaz Yavuz &#187; indexer</title>
	<atom:link href="http://www.yilmazyavuz.com/yyblog/index.php/tag/indexer/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.yilmazyavuz.com/yyblog</link>
	<description>yazılım üzerine taze taze</description>
	<lastBuildDate>Mon, 14 Feb 2011 15:35:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Csharp &#8211; Interface kullanıma örnek</title>
		<link>http://www.yilmazyavuz.com/yyblog/index.php/2009/06/csharp-interface-kullanima-ornek/</link>
		<comments>http://www.yilmazyavuz.com/yyblog/index.php/2009/06/csharp-interface-kullanima-ornek/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 14:21:50 +0000</pubDate>
		<dc:creator>Yılmaz Yavuz</dc:creator>
				<category><![CDATA[Diğer]]></category>
		<category><![CDATA[base class]]></category>
		<category><![CDATA[Csharp]]></category>
		<category><![CDATA[indexer]]></category>
		<category><![CDATA[interface]]></category>

		<guid isPermaLink="false">http://www.yilmazyavuz.com/yyblog/?p=282</guid>
		<description><![CDATA[<p>Kitap adında bir class ımız olsun ve üzerinde integer değer alan ve geri dönüş değeri string olan bir indexer ımız bulunsun.</p>
<p>Kitap dan türettiğimiz BilgisayarKitabi class ımız üzerindede aynı şekilde bir indexer bulunsun aynı şekilde EdebiyatKitabi vs. bir çok Kitap classından türeyen classlarımız olsun ve hepsinde de aynı imzalı ve geri dönüş değerine sahip indexerlar bulunsun.</p>
<p>Şimdi böyle <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.yilmazyavuz.com/yyblog/index.php/2009/06/csharp-interface-kullanima-ornek/">Csharp &#8211; Interface kullanıma örnek</a></span>]]></description>
			<content:encoded><![CDATA[<p>Kitap adında bir class ımız olsun ve üzerinde integer değer alan ve geri dönüş değeri string olan bir indexer ımız bulunsun.</p>
<p>Kitap dan türettiğimiz BilgisayarKitabi class ımız üzerindede aynı şekilde bir indexer bulunsun aynı şekilde EdebiyatKitabi vs. bir çok Kitap classından türeyen classlarımız olsun ve hepsinde de aynı imzalı ve geri dönüş değerine sahip indexerlar bulunsun.</p>
<p>Şimdi böyle bir senaryoda bize Kitap dan türeyen bir class ın örneği olduğuna emin olduğumuz bir nesne gelsin, ve bu nesne üzerindeki indexer dan gerekli bilgiyi almamız gerektiğini düşünelim.</p>
<p>Şu şekilde yaparsak işimiz çözülüyor gibi:</p>
<pre class="brush: csharp;">void KitapIsle(Kitap ktp)

{

MessageBox.Show(ktp[1]);

}</pre>
<p>Ancak burada ulaştığımız indexer Kitap classında tanımlı olan indexer bize ise gelen nesnenin kendi classında bulunan indexer lazım çünkü ikisi birbirinden farklı işlemler yapıyorlar. Böyle bir durumda yapılabilecek şeylerden birisi Interface kullanmak ve gelen nesneyi Interface e cast etmek yani:</p>
<pre class="brush: csharp;">interface IKoseliDeneme

{

string this[int sayfaNo]

{

get;

set;

}

}</pre>
<p>Şeklinde bir interface imiz olduğunu düşünürsek :</p>
<pre class="brush: csharp;">void KitapIsle(Kitap ktp)

{

IKoseliDeneme kitabim = (IKoseliDeneme)ktp;

MessageBox.Show(kitabim[1]);

}</pre>
<p>Şeklinde yazdığımızda interface her iki class Kitap,EdebiyatKitabi ında implement edilmiş olsa dahi kitabim dan ulaştığımız indexer nesnenin asıl Classındaki indexer olacaktır.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yilmazyavuz.com/yyblog/index.php/2009/06/csharp-interface-kullanima-ornek/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

