<?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>Sınıf arşivleri - Keşif Ruhu</title>
	<atom:link href="https://www.kesifruhu.com/tag/sinif/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.kesifruhu.com/tag/sinif/</link>
	<description>Keşfet, Deneyimle, Paylaş</description>
	<lastBuildDate>Tue, 13 May 2025 13:43:31 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.3</generator>

<image>
	<url>https://www.kesifruhu.com/wp-content/uploads/2024/09/siteico-150x150.png</url>
	<title>Sınıf arşivleri - Keşif Ruhu</title>
	<link>https://www.kesifruhu.com/tag/sinif/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>14. Sınıf ve Nesne Kavramı (OOP Temelleri)</title>
		<link>https://www.kesifruhu.com/yazilim/14-sinif-ve-nesne-kavrami-oop-temelleri/</link>
					<comments>https://www.kesifruhu.com/yazilim/14-sinif-ve-nesne-kavrami-oop-temelleri/#respond</comments>
		
		<dc:creator><![CDATA[darklaz]]></dc:creator>
		<pubDate>Tue, 13 May 2025 13:43:30 +0000</pubDate>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Yazılım]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Programlama]]></category>
		<category><![CDATA[Sınıf]]></category>
		<guid isPermaLink="false">https://www.kesifruhu.com/?p=603</guid>

					<description><![CDATA[<p>14. Sınıf ve Nesne Kavramı (OOP Temelleri) C# programlama dilinin en temel ve güçlü özelliklerinden biri, Nesne Yönelimli Programlama (OOP) paradigmasıdır. OOP, yazılım geliştirme sürecini <a class="mh-excerpt-more" href="https://www.kesifruhu.com/yazilim/14-sinif-ve-nesne-kavrami-oop-temelleri/" title="14. Sınıf ve Nesne Kavramı (OOP Temelleri)">[...]</a></p>
<p><a href="https://www.kesifruhu.com/yazilim/14-sinif-ve-nesne-kavrami-oop-temelleri/">14. Sınıf ve Nesne Kavramı (OOP Temelleri)</a> yazısı ilk önce <a href="https://www.kesifruhu.com">Keşif Ruhu</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image"><img decoding="async" src="https://images.pexels.com/photos/25626437/pexels-photo-25626437.jpeg?auto=compress&amp;cs=tinysrgb&amp;fit=crop&amp;h=627&amp;w=1200" alt="image text"/></figure>



<p></p>



<h1 class="wp-block-heading">14. Sınıf ve Nesne Kavramı (OOP Temelleri)</h1>



<p>C# programlama dilinin en temel ve güçlü özelliklerinden biri, <strong>Nesne Yönelimli Programlama (OOP)</strong> paradigmasıdır. OOP, yazılım geliştirme sürecini daha düzenli, modüler ve yeniden kullanılabilir hale getirmeyi amaçlar. Bu yaklaşımın merkezinde ise <em>sınıf</em> ve <em>nesne</em> kavramları yer alır. Bu yazıda, C# dilinde sınıf ve nesne kavramlarını detaylı bir şekilde inceleyeceğiz.</p>



<h2 class="wp-block-heading">Sınıf (Class) Nedir?</h2>



<p>Sınıf, bir nesnenin şablonu veya planıdır. Başka bir deyişle, bir nesnenin hangi özelliklere (alanlar veya değişkenler) ve davranışlara (metotlar) sahip olacağını tanımlar. Sınıf, gerçek dünyadaki nesnelerin veya kavramların soyut bir temsilidir.</p>



<p>C# dilinde bir sınıf tanımlamak için `class` anahtar kelimesi kullanılır. Sınıfın içinde, o sınıfa ait alanlar (fields) ve metotlar (methods) tanımlanır.</p>



<h3 class="wp-block-heading">Sınıf Tanımlama Sözdizimi</h3>



<p>Bir sınıfın temel yapısı aşağıdaki gibidir:</p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">C#</span><span role="button" tabindex="0" data-code="
class SinifAdi
{
    // Alanlar (Fields)
    // Metotlar (Methods)
}
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #569CD6">class</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">SinifAdi</span></span>
<span class="line"><span style="color: #D4D4D4">{</span></span>
<span class="line"><span style="color: #6A9955">    // Alanlar (Fields)</span></span>
<span class="line"><span style="color: #6A9955">    // Metotlar (Methods)</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span></code></pre></div>



<p></p>



<p><strong>Örnek:</strong></p>



<p>Bir `Araba` sınıfı tanımlayalım. Bu sınıfın `Marka`, `Model`, `Renk` gibi alanları ve `Hizlan`, `Yavasla` gibi metotları olsun.</p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(2 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">C#</span><span role="button" tabindex="0" data-code="
class Araba
{
    public string Marka;
    public string Model;
    public string Renk;

    public void Hizlan()
    {
        Console.WriteLine(&quot;Araba hızlanıyor!&quot;);
    }

    public void Yavasla()
    {
        Console.WriteLine(&quot;Araba yavaşlıyor!&quot;);
    }
}
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #569CD6">class</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Araba</span></span>
<span class="line"><span style="color: #D4D4D4">{</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">string</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">Marka</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">string</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">Model</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">string</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">Renk</span><span style="color: #D4D4D4">;</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">void</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">Hizlan</span><span style="color: #D4D4D4">()</span></span>
<span class="line"><span style="color: #D4D4D4">    {</span></span>
<span class="line"><span style="color: #D4D4D4">        </span><span style="color: #9CDCFE">Console</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">WriteLine</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Araba hızlanıyor!&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">    }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">void</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">Yavasla</span><span style="color: #D4D4D4">()</span></span>
<span class="line"><span style="color: #D4D4D4">    {</span></span>
<span class="line"><span style="color: #D4D4D4">        </span><span style="color: #9CDCFE">Console</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">WriteLine</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Araba yavaşlıyor!&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">    }</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span></code></pre></div>



<p></p>



<p>Bu örnekte, `Araba` sınıfının temel özelliklerini ve davranışlarını tanımladık. Ancak, bu sınıf henüz somut bir araba değildir. Somut bir araba yaratmak için, bu sınıftan bir nesne (instance) oluşturmamız gerekir.</p>



<h2 class="wp-block-heading">Nesne (Object) Nedir?</h2>



<p>Nesne, bir sınıfın somut bir örneğidir. Sınıf bir plan veya şablon iken, nesne bu planın hayata geçirilmiş halidir. Bir sınıftan birden fazla nesne oluşturulabilir. Her nesne, sınıfın tanımladığı özelliklere ve davranışlara sahiptir, ancak her nesnenin özellikleri farklı değerlere sahip olabilir.</p>



<h3 class="wp-block-heading">Nesne Oluşturma</h3>



<p>C# dilinde bir nesne oluşturmak için `new` anahtar kelimesi kullanılır. `new` anahtar kelimesi, bellekte nesne için yer ayırır ve sınıfın kurucu metodunu (constructor) çağırır.</p>



<p><strong>Örnek:</strong></p>



<p>`Araba` sınıfından bir nesne oluşturalım:</p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">C#</span><span role="button" tabindex="0" data-code="
Araba benimArabam = new Araba();
benimArabam.Marka = &quot;Mercedes&quot;;
benimArabam.Model = &quot;C180&quot;;
benimArabam.Renk = &quot;Beyaz&quot;;

Console.WriteLine(&quot;Arabanın markası: &quot; + benimArabam.Marka);
benimArabam.Hizlan();
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #4EC9B0">Araba</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4"> = </span><span style="color: #569CD6">new</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Araba</span><span style="color: #D4D4D4">();</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">Marka</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;Mercedes&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">Model</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;C180&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">Renk</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;Beyaz&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"></span>
<span class="line"><span style="color: #9CDCFE">Console</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">WriteLine</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Arabanın markası: &quot;</span><span style="color: #D4D4D4"> + </span><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">Marka</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">Hizlan</span><span style="color: #D4D4D4">();</span></span>
<span class="line"></span></code></pre></div>



<p></p>



<p>Bu örnekte, `benimArabam` adında bir `Araba` nesnesi oluşturduk ve bu nesnenin `Marka`, `Model` ve `Renk` özelliklerine değerler atadık. Ardından, nesnenin `Hizlan` metodunu çağırdık.</p>



<h2 class="wp-block-heading">OOP&#8217;nin Temel Prensipleri</h2>



<p>Sınıf ve nesne kavramları, Nesne Yönelimli Programlama&#8217;nın temelini oluşturur. OOP&#8217;nin diğer önemli prensipleri şunlardır:</p>



<ul class="wp-block-list">
<li><strong>Kapsülleme (Encapsulation):</strong> Verileri ve metotları bir arada tutarak, verilerin dışarıdan doğrudan erişilmesini engeller. Bu, veri güvenliğini artırır ve kodun daha modüler olmasını sağlar.</li>



<li><strong>Miras (Inheritance):</strong> Bir sınıfın (alt sınıf veya türetilmiş sınıf) başka bir sınıftan (üst sınıf veya temel sınıf) özelliklerini ve davranışlarını devralmasını sağlar. Bu, kodun yeniden kullanılabilirliğini artırır ve hiyerarşik bir yapı oluşturmayı kolaylaştırır.</li>



<li><strong>Çok Biçimlilik (Polymorphism):</strong> Bir nesnenin farklı şekillerde davranabilmesini sağlar. Bu, kodun daha esnek ve genişletilebilir olmasını sağlar.</li>



<li><strong>Soyutlama (Abstraction):</strong> Karmaşık sistemlerin temel özelliklerini ortaya çıkararak, gereksiz detayları gizler. Bu, kodun daha anlaşılır ve yönetilebilir olmasını sağlar.</li>
</ul>



<h2 class="wp-block-heading">Sınıf ve Nesne Kullanımının Avantajları</h2>



<p>C# dilinde sınıf ve nesne kavramlarını kullanarak program yazmanın birçok avantajı vardır:</p>



<ul class="wp-block-list">
<li><strong>Modülerlik:</strong> Kodun daha küçük ve yönetilebilir parçalara ayrılmasını sağlar.</li>



<li><strong>Yeniden Kullanılabilirlik:</strong> Sınıflar ve nesneler, farklı projelerde tekrar tekrar kullanılabilir.</li>



<li><strong>Bakım Kolaylığı:</strong> Kodun daha düzenli ve anlaşılır olmasını sağlar, bu da hataları bulmayı ve düzeltmeyi kolaylaştırır.</li>



<li><strong>Genişletilebilirlik:</strong> Yeni özellikler eklemek veya mevcut özellikleri değiştirmek daha kolaydır.</li>
</ul>



<h2 class="wp-block-heading">Sonuç</h2>



<p>C# programlama dilinde sınıf ve nesne kavramları, modern yazılım geliştirme için vazgeçilmezdir. Bu kavramları anlamak ve doğru bir şekilde kullanmak, daha sağlam, ölçeklenebilir ve bakımı kolay uygulamalar geliştirmemizi sağlar. Nesne Yönelimli Programlama prensiplerini özümseyerek, yazılım geliştirme sürecini daha verimli ve keyifli hale getirebiliriz.</p>



<p>Umarım bu makale, C# dilinde sınıf ve nesne kavramlarını anlamanıza yardımcı olmuştur. Başarılar dilerim!</p>
<p><a href="https://www.kesifruhu.com/yazilim/14-sinif-ve-nesne-kavrami-oop-temelleri/">14. Sınıf ve Nesne Kavramı (OOP Temelleri)</a> yazısı ilk önce <a href="https://www.kesifruhu.com">Keşif Ruhu</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.kesifruhu.com/yazilim/14-sinif-ve-nesne-kavrami-oop-temelleri/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>15. Sınıf ve Nesne Kavramı (OOP Temelleri)</title>
		<link>https://www.kesifruhu.com/yazilim/15-sinif-ve-nesne-kavrami-oop-temelleri/</link>
					<comments>https://www.kesifruhu.com/yazilim/15-sinif-ve-nesne-kavrami-oop-temelleri/#respond</comments>
		
		<dc:creator><![CDATA[darklaz]]></dc:creator>
		<pubDate>Thu, 10 Apr 2025 13:42:10 +0000</pubDate>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Yazılım]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Programlama]]></category>
		<category><![CDATA[Sınıf]]></category>
		<guid isPermaLink="false">https://www.kesifruhu.com/?p=493</guid>

					<description><![CDATA[<p>15. Sınıf ve Nesne Kavramı (OOP Temelleri) Java, nesne yönelimli bir programlama (OOP) dilidir. Bu, programlarınızı nesneler etrafında yapılandırmanıza ve verilerinizi ve davranışlarınızı bu nesneler <a class="mh-excerpt-more" href="https://www.kesifruhu.com/yazilim/15-sinif-ve-nesne-kavrami-oop-temelleri/" title="15. Sınıf ve Nesne Kavramı (OOP Temelleri)">[...]</a></p>
<p><a href="https://www.kesifruhu.com/yazilim/15-sinif-ve-nesne-kavrami-oop-temelleri/">15. Sınıf ve Nesne Kavramı (OOP Temelleri)</a> yazısı ilk önce <a href="https://www.kesifruhu.com">Keşif Ruhu</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image"><img decoding="async" src="https://images.pexels.com/photos/177598/pexels-photo-177598.jpeg?auto=compress&amp;cs=tinysrgb&amp;fit=crop&amp;h=627&amp;w=1200" alt="image text"/></figure>



<p></p>



<h1 class="wp-block-heading">15. Sınıf ve Nesne Kavramı (OOP Temelleri)</h1>



<p>Java, nesne yönelimli bir programlama (OOP) dilidir. Bu, programlarınızı nesneler etrafında yapılandırmanıza ve verilerinizi ve davranışlarınızı bu nesneler içinde bir araya getirmenize olanak tanır. Nesne yönelimli programlamanın temel yapı taşları <strong>sınıflar</strong> ve <strong>nesnelerdir</strong>. Bu yazıda, Java&#8217;da sınıf ve nesne kavramlarını derinlemesine inceleyeceğiz, OOP&#8217;nin temel prensiplerini anlayacağız ve bu bilgileri pratik örneklerle pekiştireceğiz.</p>



<figure class="wp-block-image"><img decoding="async" src="image-placeholder.jpg" alt="Java Class Diagram"/></figure>



<p></p>



<h2 class="wp-block-heading">Sınıf Nedir?</h2>



<p>Bir <strong>sınıf</strong>, nesneler oluşturmak için kullanılan bir şablondur. Bir evin planı gibi düşünülebilir. Sınıf, nesnenin sahip olacağı özellikleri (değişkenler) ve nesnenin yapabileceği eylemleri (metotlar) tanımlar. Başka bir deyişle, sınıf bir nesnenin <em>tasarımıdır</em>.</p>



<p>Java&#8217;da bir sınıf tanımlamak için <code>class</code> anahtar kelimesini kullanırız. Sınıfın adı, büyük harfle başlar ve Java isimlendirme kurallarına uygun olmalıdır. İşte basit bir sınıf tanımı örneği:</p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(2 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">Java</span><span role="button" tabindex="0" data-code="
public class Araba {
  // Değişkenler (özellikler)
  String marka;
  String model;
  int yil;
  String renk;

  // Metotlar (davranışlar)
  public void calistir() {
    System.out.println(&quot;Araba çalıştı!&quot;);
  }

  public void durdur() {
    System.out.println(&quot;Araba durdu!&quot;);
  }
}
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">class</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Araba</span><span style="color: #D4D4D4"> {</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #6A9955">// Değişkenler (özellikler)</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">marka</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">model</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #4EC9B0">int</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">yil</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">renk</span><span style="color: #D4D4D4">;</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #6A9955">// Metotlar (davranışlar)</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">void</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">calistir</span><span style="color: #D4D4D4">() {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">System</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">out</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">println</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Araba çalıştı!&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">void</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">durdur</span><span style="color: #D4D4D4">() {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">System</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">out</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">println</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Araba durdu!&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span></code></pre></div>



<p>Bu örnekte, <code>Araba</code> adında bir sınıf tanımladık. Bu sınıf, <code>marka</code>, <code>model</code>, <code>yil</code> ve <code>renk</code> adında dört değişkene (özelliğe) ve <code>calistir()</code> ve <code>durdur()</code> adında iki metoda (davranışa) sahiptir.</p>



<h2 class="wp-block-heading">Nesne Nedir?</h2>



<p>Bir <strong>nesne</strong>, bir sınıfın somut bir örneğidir. Ev planına (sınıf) sahip olduktan sonra, bu plana göre inşa ettiğiniz her ev bir nesnedir. Sınıf bir <em>şablon</em> iken, nesne bu şablonun <em>gerçekleşmiş</em> halidir. Bir sınıftan birden fazla nesne oluşturabilirsiniz; her nesne, sınıfın tanımladığı özelliklere ve davranışlara sahip olacaktır, ancak bu özelliklerin değerleri farklı olabilir.</p>



<p>Java&#8217;da bir nesne oluşturmak için <code>new</code> anahtar kelimesini kullanırız. İşte <code>Araba</code> sınıfından bir nesne oluşturma örneği:</p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(2 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">Java</span><span role="button" tabindex="0" data-code="
Araba benimArabam = new Araba();
benimArabam.marka = &quot;BMW&quot;;
benimArabam.model = &quot;320i&quot;;
benimArabam.yil = 2023;
benimArabam.renk = &quot;Beyaz&quot;;

System.out.println(&quot;Arabanın markası: &quot; + benimArabam.marka);
benimArabam.calistir();
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #4EC9B0">Araba</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4"> = </span><span style="color: #C586C0">new</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">Araba</span><span style="color: #D4D4D4">();</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">marka</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;BMW&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">model</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;320i&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">yil</span><span style="color: #D4D4D4"> = </span><span style="color: #B5CEA8">2023</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">renk</span><span style="color: #D4D4D4"> = </span><span style="color: #CE9178">&quot;Beyaz&quot;</span><span style="color: #D4D4D4">;</span></span>
<span class="line"></span>
<span class="line"><span style="color: #9CDCFE">System</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">out</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">println</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Arabanın markası: &quot;</span><span style="color: #D4D4D4"> + </span><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">marka</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #9CDCFE">benimArabam</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">calistir</span><span style="color: #D4D4D4">();</span></span>
<span class="line"></span></code></pre></div>



<p>Bu örnekte, <code>Araba</code> sınıfından <code>benimArabam</code> adında bir nesne oluşturduk. Daha sonra, bu nesnenin özelliklerini (<code>marka</code>, <code>model</code>, <code>yil</code>, <code>renk</code>) belirli değerlerle doldurduk ve <code>calistir()</code> metodunu çağırdık.</p>



<h2 class="wp-block-heading">Sınıf ve Nesne Arasındaki İlişki</h2>



<p>Sınıf ve nesne arasındaki ilişkiyi daha iyi anlamak için, bir pasta kalıbı ve pastalar arasındaki ilişkiyi düşünebiliriz. Pasta kalıbı (sınıf), pastaların (nesneler) şeklini ve boyutunu tanımlar. Her pasta, aynı kalıptan (sınıftan) oluşturulmuş olsa da, farklı malzemelerle (özellik değerleri) yapılabilir.</p>



<h2 class="wp-block-heading">OOP&#8217;nin Temel İlkeleri</h2>



<p>Sınıf ve nesne kavramları, nesne yönelimli programlamanın (OOP) temelini oluşturur. OOP, yazılım geliştirme sürecini daha modüler, esnek ve yeniden kullanılabilir hale getirmeyi amaçlayan bir programlama paradigmasıdır. OOP&#8217;nin dört temel ilkesi şunlardır:</p>



<ul class="wp-block-list">
<li><strong>Soyutlama (Abstraction):</strong> Gereksiz detayları gizleyerek, karmaşıklığı azaltır ve önemli bilgilere odaklanmayı sağlar.</li>



<li><strong>Kapsülleme (Encapsulation):</strong> Verileri ve metotları bir arada tutarak, verilere doğrudan erişimi engeller ve veri bütünlüğünü korur.</li>



<li><strong>Miras (Inheritance):</strong> Mevcut sınıflardan yeni sınıflar türetilmesini sağlayarak, kodun yeniden kullanılabilirliğini artırır ve hiyerarşik bir yapı oluşturur.</li>



<li><strong>Çok Biçimlilik (Polymorphism):</strong> Nesnelerin farklı şekillerde davranabilmesini sağlayarak, esnekliği ve genişletilebilirliği artırır.</li>
</ul>



<h3 class="wp-block-heading">Soyutlama (Abstraction)</h3>



<p>Soyutlama, nesnelerin yalnızca gerekli olan özelliklerini ve davranışlarını göstererek karmaşıklığı yönetmeye yardımcı olur. Bir araba kullanırken, motorun iç detaylarını bilmemize gerek yoktur; sadece direksiyonu, pedalları ve vitesi kullanırız. Bu, arabanın soyutlanmış bir görünümüdür.</p>



<h3 class="wp-block-heading">Kapsülleme (Encapsulation)</h3>



<p>Kapsülleme, verileri ve bu veriler üzerinde işlem yapan metotları bir araya getirerek, verilerin dışarıdan doğrudan erişilmesini engeller. Bu, veri bütünlüğünü korur ve nesnenin iç yapısının değiştirilmesini zorlaştırır. Java&#8217;da kapsülleme, erişim belirleyicileri (<code>private</code>, <code>protected</code>, <code>public</code>) kullanılarak sağlanır.</p>



<h3 class="wp-block-heading">Miras (Inheritance)</h3>



<p>Miras, bir sınıfın (alt sınıf veya türetilmiş sınıf) başka bir sınıfın (üst sınıf veya temel sınıf) özelliklerini ve davranışlarını devralmasını sağlar. Bu, kodun yeniden kullanılabilirliğini artırır ve sınıflar arasında bir hiyerarşik ilişki oluşturur. Örneğin, bir <code>Araba</code> sınıfından <code>SporAraba</code> sınıfı türetilebilir; <code>SporAraba</code>, <code>Araba</code>&#8216;nın tüm özelliklerine ve davranışlarına sahip olur ve ek özellikler ve davranışlar ekleyebilir.</p>



<h3 class="wp-block-heading">Çok Biçimlilik (Polymorphism)</h3>



<p>Çok biçimlilik, aynı metodun farklı sınıflarda farklı şekillerde uygulanabilmesini sağlar. Bu, esnekliği ve genişletilebilirliği artırır. Örneğin, bir <code>Sekil</code> sınıfından <code>Kare</code> ve <code>Daire</code> sınıfları türetilebilir; her iki sınıf da <code>alanHesapla()</code> metoduna sahip olabilir, ancak bu metot her sınıf için farklı bir şekilde uygulanır.</p>



<figure class="wp-block-image"><img decoding="async" src="image-placeholder.jpg" alt="OOP Principles Visualization"/></figure>



<p></p>



<h2 class="wp-block-heading">Örnek Uygulama</h2>



<p>Şimdi, OOP&#8217;nin temel ilkelerini kullanarak daha kapsamlı bir örnek oluşturalım. Bir <code>Hayvan</code> sınıfı ve bu sınıftan türetilmiş <code>Kedi</code> ve <code>Köpek</code> sınıfları tanımlayalım.</p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(2 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7">Java</span><span role="button" tabindex="0" data-code="
public class Hayvan {
  private String ad;
  private String tur;

  public Hayvan(String ad, String tur) {
    this.ad = ad;
    this.tur = tur;
  }

  public void sesCikar() {
    System.out.println(&quot;Hayvan sesi çıkarıyor.&quot;);
  }

  public String getAd() {
    return ad;
  }

  public String getTur() {
    return tur;
  }
}

public class Kedi extends Hayvan {
  public Kedi(String ad) {
    super(ad, &quot;Kedi&quot;);
  }

  @Override
  public void sesCikar() {
    System.out.println(&quot;Miyav!&quot;);
  }
}

public class Kopek extends Hayvan {
  public Kopek(String ad) {
    super(ad, &quot;Köpek&quot;);
  }

  @Override
  public void sesCikar() {
    System.out.println(&quot;Hav!&quot;);
  }
}

public class Main {
  public static void main(String[] args) {
    Kedi tekir = new Kedi(&quot;Tekir&quot;);
    Kopek karabas = new Kopek(&quot;Karabaş&quot;);

    System.out.println(tekir.getAd() + &quot; bir &quot; + tekir.getTur() + &quot;'dir.&quot;);
    tekir.sesCikar();

    System.out.println(karabas.getAd() + &quot; bir &quot; + karabas.getTur() + &quot;'dir.&quot;);
    karabas.sesCikar();
  }
}
" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"></span>
<span class="line"><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">class</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Hayvan</span><span style="color: #D4D4D4"> {</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">private</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">ad</span><span style="color: #D4D4D4">;</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">private</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">tur</span><span style="color: #D4D4D4">;</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">Hayvan</span><span style="color: #D4D4D4">(</span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">ad</span><span style="color: #D4D4D4">, </span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">tur</span><span style="color: #D4D4D4">) {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">this</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">ad</span><span style="color: #D4D4D4"> = ad;</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">this</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">tur</span><span style="color: #D4D4D4"> = tur;</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">void</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">sesCikar</span><span style="color: #D4D4D4">() {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">System</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">out</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">println</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Hayvan sesi çıkarıyor.&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">getAd</span><span style="color: #D4D4D4">() {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #C586C0">return</span><span style="color: #D4D4D4"> ad;</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">getTur</span><span style="color: #D4D4D4">() {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #C586C0">return</span><span style="color: #D4D4D4"> tur;</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span>
<span class="line"><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">class</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Kedi</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">extends</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Hayvan</span><span style="color: #D4D4D4"> {</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">Kedi</span><span style="color: #D4D4D4">(</span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">ad</span><span style="color: #D4D4D4">) {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">super</span><span style="color: #D4D4D4">(ad, </span><span style="color: #CE9178">&quot;Kedi&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">  @</span><span style="color: #4EC9B0">Override</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">void</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">sesCikar</span><span style="color: #D4D4D4">() {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">System</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">out</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">println</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Miyav!&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span>
<span class="line"><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">class</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Kopek</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">extends</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Hayvan</span><span style="color: #D4D4D4"> {</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">Kopek</span><span style="color: #D4D4D4">(</span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">ad</span><span style="color: #D4D4D4">) {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #569CD6">super</span><span style="color: #D4D4D4">(ad, </span><span style="color: #CE9178">&quot;Köpek&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">  @</span><span style="color: #4EC9B0">Override</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">void</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">sesCikar</span><span style="color: #D4D4D4">() {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">System</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">out</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">println</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Hav!&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span>
<span class="line"><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">class</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Main</span><span style="color: #D4D4D4"> {</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #569CD6">public</span><span style="color: #D4D4D4"> </span><span style="color: #569CD6">static</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">void</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">main</span><span style="color: #D4D4D4">(</span><span style="color: #4EC9B0">String</span><span style="color: #D4D4D4">[] </span><span style="color: #9CDCFE">args</span><span style="color: #D4D4D4">) {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #4EC9B0">Kedi</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">tekir</span><span style="color: #D4D4D4"> = </span><span style="color: #C586C0">new</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">Kedi</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Tekir&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #4EC9B0">Kopek</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">karabas</span><span style="color: #D4D4D4"> = </span><span style="color: #C586C0">new</span><span style="color: #D4D4D4"> </span><span style="color: #DCDCAA">Kopek</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Karabaş&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">System</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">out</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">println</span><span style="color: #D4D4D4">(</span><span style="color: #9CDCFE">tekir</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">getAd</span><span style="color: #D4D4D4">() + </span><span style="color: #CE9178">&quot; bir &quot;</span><span style="color: #D4D4D4"> + </span><span style="color: #9CDCFE">tekir</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">getTur</span><span style="color: #D4D4D4">() + </span><span style="color: #CE9178">&quot;&#39;dir.&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">tekir</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">sesCikar</span><span style="color: #D4D4D4">();</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">System</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">out</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">println</span><span style="color: #D4D4D4">(</span><span style="color: #9CDCFE">karabas</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">getAd</span><span style="color: #D4D4D4">() + </span><span style="color: #CE9178">&quot; bir &quot;</span><span style="color: #D4D4D4"> + </span><span style="color: #9CDCFE">karabas</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">getTur</span><span style="color: #D4D4D4">() + </span><span style="color: #CE9178">&quot;&#39;dir.&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">karabas</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">sesCikar</span><span style="color: #D4D4D4">();</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span></code></pre></div>



<p>Bu örnekte, <code>Hayvan</code> sınıfı, <code>Kedi</code> ve <code>Köpek</code> sınıfları için bir temel sınıf olarak işlev görür. <code>Kedi</code> ve <code>Köpek</code> sınıfları, <code>Hayvan</code> sınıfının özelliklerini devralır ve <code>sesCikar()</code> metodunu kendilerine özgü bir şekilde uygular. Bu, miras ve çok biçimlilik kavramlarının bir örneğidir.</p>



<h2 class="wp-block-heading">Sonuç</h2>



<p>Sınıf ve nesne kavramları, Java programlamanın temelini oluşturur ve nesne yönelimli programlamanın (OOP) merkezinde yer alır. Bu kavramları anlamak, daha modüler, esnek ve yeniden kullanılabilir kodlar yazmanıza yardımcı olur. OOP&#8217;nin temel ilkelerini (soyutlama, kapsülleme, miras, çok biçimlilik) öğrenerek, daha karmaşık ve büyük ölçekli yazılım projelerini daha etkili bir şekilde yönetebilirsiniz. Bu bilgiler ışığında, Java ile nesne yönelimli programlama becerilerinizi geliştirmeye devam edebilirsiniz.</p>



<p>Umarım bu makale, sınıf ve nesne kavramlarını anlamanıza yardımcı olmuştur. Java programlama yolculuğunuzda başarılar dilerim!</p>



<figure class="wp-block-image"><img decoding="async" src="image-placeholder.jpg" alt="Java Programming Success"/></figure>



<p></p>
<p><a href="https://www.kesifruhu.com/yazilim/15-sinif-ve-nesne-kavrami-oop-temelleri/">15. Sınıf ve Nesne Kavramı (OOP Temelleri)</a> yazısı ilk önce <a href="https://www.kesifruhu.com">Keşif Ruhu</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.kesifruhu.com/yazilim/15-sinif-ve-nesne-kavrami-oop-temelleri/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
