<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Kübra Nur Bayındır on Medium]]></title>
        <description><![CDATA[Stories by Kübra Nur Bayındır on Medium]]></description>
        <link>https://medium.com/@kbra.nur?source=rss-60edf4414841------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*hrz7zhQ2xONMjnan_gMU3Q.jpeg</url>
            <title>Stories by Kübra Nur Bayındır on Medium</title>
            <link>https://medium.com/@kbra.nur?source=rss-60edf4414841------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 24 May 2026 02:24:46 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@kbra.nur/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[JAVA REFLECTION API]]></title>
            <link>https://medium.com/@kbra.nur/java-reflection-api-c5237f39f5d7?source=rss-60edf4414841------2</link>
            <guid isPermaLink="false">https://medium.com/p/c5237f39f5d7</guid>
            <category><![CDATA[java-tips]]></category>
            <category><![CDATA[java-reflection]]></category>
            <category><![CDATA[reflections]]></category>
            <category><![CDATA[jvm]]></category>
            <category><![CDATA[java]]></category>
            <dc:creator><![CDATA[Kübra Nur Bayındır]]></dc:creator>
            <pubDate>Mon, 28 Mar 2022 13:00:27 GMT</pubDate>
            <atom:updated>2022-03-28T13:00:27.031Z</atom:updated>
            <content:encoded><![CDATA[<p>Java Reflection (Yansıma), Java Sanal Makinasında (JVM-Java Virtual Machine) çalışan uygulamaların, sınıfların (classes), methodların ve arayüzlerin (interfaces) çalışma zamanındaki (runtime) davranışlarını inceleyen ve bu davranışlarına yön vermeye yarayan bir özelliktir.</p><figure><img alt="Java Reflection API" src="https://cdn-images-1.medium.com/max/670/1*K7r_uTZE_AwmWrgvsyIajw.png" /></figure><p>java.lang.reflect API’sinde tanımlanan yansıma özelliği, hata ayıklama (debugging) ve test araçlarında, görsel yazılım geliştirme ortamlarında kullanılmaktadır.</p><p>Reflection yapısı kullanarak;</p><ul><li>Class : Bir sınıfın bilgilerini ve özelliklerini incelemek için<strong> getClass(),</strong> <strong>getName(), getSimpleName(), getModifiers(), getPackage(), getSuperclass(), getInterfaces(), getFields(), getAnnotation()</strong> methodlarını kullanır.</li><li>Method : Bir methodun bilgilerini ve özelliklerini incelemek için<strong> getMethods(), getDeclaredMethods()</strong> methodlarını kullanır.</li><li>Constructor : Bir yapıcı bloğun bilgilerini ve özelliklerini incelemek için <strong>getConstructors(), getDeclaredConstructor()</strong> methodunu kullanır.</li></ul><p>Java Reflection (Yansıma) ‘nın avantajları olduğu kadar dezavantajlarıda vardır.</p><h4>Avantajları</h4><p>Çalışma zamanı sırasında arayüzlerin, sınıfların, yöntemlerin ve alanların incelenmesi, derleme sırasında adlarını kullanmadan bile yansıma kullanılarak mümkündür.</p><p>Yöntemleri çağırmak, bir netliği başlatmak veya yansıma kullanarak alanların değerini ayarlamak da mümkündür. Geliştiricilerin doğru kodu yazmalarına yardımcı olan Görsel Geliştirme Ortamlarının ve sınıf tarayıcılarının oluşturulmasına yardımcı olur.</p><h4>Dezavantajları</h4><p>Yansımayı kullanarak, çalışma zamanında sınıfları, arayüzleri, yapıcıları, alanları ve yöntemleri inceleyebiliriz. Bu inceleme, bu varlıkların davranışını çalışma zamanında değiştirmemize olanak tanır.</p><p>Yansıma kullanarak, bir sınıftaki özel alanlara ve yöntemlere erişebiliriz. Böylece yansıma, kodu taşınabilir ve işlevsiz hale getirebilecek soyutlamayı kırar.</p><p>Diğer bir dezavantaj, yansımalarla gerçekleştirilen işlemler genellikle yavaştır.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c5237f39f5d7" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>