title: Java Dersleri 4 - Erişim Denetleyicileri (Access Modifiers) link: http://orhanbalci.net/tr/?p=92 author: Orhan Balci description: post_id: 92 created: 2009/04/12 18:52:05 created_gmt: 2009/04/12 16:52:05 comment_status: open post_name: java-dersleri-4-erisim-denetleyicileri-access-modifiers status: publish post_type: post
Java Dersleri 4 - Erişim Denetleyicileri (Access Modifiers)
[caption id=“attachment_794” align=“aligncenter” width=“600” caption=“Java Dersleri 4”][/caption] Bu dersimizde Java’nın metodlar ve sınıflar üzerinde erişim kurallarını düzenleyen anahtar kelimelerini ve nasıl kullanıldıklarını örnekleriyle öğreneceğiz. Java’da dört adet erişim düzeyi bulunmakla birlikte üç adet erişim denetleyici anahtar kelime vardır. Dördüncü erişim düzeyi ise bu kelimelerin bulunmadiği seviyedir. Erişim kontrolü yazılımda her birimin kendi işine odaklanmasına yardımcı olur. Temelde nesne yönelimli programanın ana unsrlarındandır. Veri kapsülleme, miras ve çok biçimlilik paradigmalarının hayata geçirilmesine olanak tanırlar. Java’da erişim denetleyici anahtar kelimeler şunlardır: **1)Public 2)Protected 3)Private ** Bu anahtar kelimelerle işaretlenmemiş her türlü Java yapısı default erişim seviyesine sahip olur ki bu da dördüncü erişim seviyesidir. Sırasıyla bu seviyeleri ve aralarındaki erişim ilişkilerini açıklamaya çalışalım. 1)Public Erişim Seviyesi Bu anahtar kelime önüne geldiği sınıfı,değişkeni, methodu diğer bütün kod bloklarından erişilebilir olarak işaretler. Sınıf seviyesinde kullanılabildiği gibi sınıf elemanları seviyesinde de kullanılabilir. Örneğin : [java] public class FrmVet extends JPanel implements IDataChangeListener, ListSelectionListener { } [/java] FrmVet sınıfı tanımında kullanılan public anahtar kelimesi bu sınıfın proje kapsamında diğer tüm sınıflar tarafından kullanılabilieceğini belirtir. Bu örnekte ise : [java] public abstract class QueryManagerBase { public ResultSet runSelectQuery(String query) throws SQLException { Statement s = (Statement) connection.getConnection().createStatement(); return (ResultSet) s.executeQuery(query); } } [/java] public anahtar kelimesi runSelectQuery(String query) metodunu diğer sınıflar tarafından kısıtlama olmadan erişilebilir olarak işaretlemiştir. 2)Protected Erişim Seviyesi Bu erişim seviyesi sınıflara uygulanamamakla birlikte metodlara ve sınıf değişkenlerine uygulanır. Önünen geldiği elemana “alt sınıflardan” ve “aynı pakette bulunan sınıflardan” ulaşılmasına izin verir. Örneğin : [java] public abstract class QueryManagerBase { protected IDatabaseConnection connection; protected ArrayList
Erişimci Sınıf Paket Alt Sınıf Diğer
Public Erişim Var Erişim Var Erişim Var Erişim Var
Protected Erişim Var Erişim Var Erişim Var Erişim Yok
Default Erişim Var Erişim Var Erişim Yok Erişim Yok
Private Erişim Var Erişim Yok Erişim Yok Erişim Yok Kaynaklar:
Comments
iicocuk: Hocam iyi güzel de bu alt sınıf üst sınıf olayına girmişsin biz sınıfı anlamadan. alt sınıf ne üst sınıf ne ayrımcılık mı var :) böyle public private in mantığı nedir yani? başka sınıflarda yazacağımız kodlarda aynı isimde sınıflar falan varsa karışmasın diye mi? işte java bu yüzden kasıyor herkesi ya çok not tutman lazım ya da çok kafa tüketmen lazım yanılıyor muyum?
Hooop: Hocam çok teşekkürler.Başka yerde vidyolar var.Bir konuyu 2-3 saatte anlatıyor.Burdada bayağı kısaymış :)Ortası tutturursanız daha mı iyi olur acaba? Nasıl yapsak ki onu? Yazmasam mı ki artık? Bu Leyla ile Mecnun’u izleyince insanın konuşması mı değişiyor ki? Nasıl oluyor acaba? Nasıııııl?