encapsulation c
C ++ 'da Kapsüllemeye Tam Bir Genel Bakış:
Soyutlamayı önceki eğitimimizde ayrıntılı olarak tartıştık. Soyutlama, bildiğimiz gibi, uygulama detaylarını kullanıcıdan gizler ve sadece kullanıcının ihtiyaç duyduğu arayüzü ortaya çıkarır.
Bu eğitimde, OOP'nin bir başka önemli özelliğini, yani Kapsülleme tartışacağız. Soyutlama ve kapsülleme el ele gider. Aslında, kapsüllenmiş kodun soyutlamada bize yardımcı olduğunu söyleyebiliriz. Başka bir deyişle, kapsülleme ve soyutlama birbirine sıkı sıkıya bağlıdır.
=> Uzmanlardan Tam C ++ Kursu İçin Burayı Ziyaret Edin.
Dolayısıyla, kapsülleme ve soyutlama arasında çok ince bir çizgi olduğu için bu iki kavramı birlikte tartışabiliriz.
Ne öğreneceksin:
- Kapsülleme Nedir?
- Kapsülleme Uygulaması
- Kapsülleme ve Soyutlama Arasındaki Fark
- Sonuç
- Önerilen Kaynaklar
Kapsülleme Nedir?
Veri kapsülleme, verileri ve işlevleri veya bu veriler üzerinde çalışan yöntemleri tek bir birimde bir araya getirme sürecini ifade eder, böylece dış müdahale ve yanlış kullanımdan korunur.
Bu, önemli bir nesne yönelimli programlama kavramıdır ve ' Veri gizleme ”. Kapsülleme, verileri ve üyelerini gizlerken, soyutlama yalnızca gerekli ayrıntıları veya dış dünyaya arayüzleri ortaya çıkarır.
Bir bakıma soyutlama, gizli verilerin “soyut görünümünü” dış dünyaya sunar. Böylece, kapsülleme ve soyutlamanın el ele gittiğine dair bir açıklama yapmıştık.

dinlendirici web hizmetlerini test etmek için araçlar
C ++ 'daki bir sınıf, veri üyelerini ve bu veri üyelerinde çalışan işlevleri, özel, genel ve korumalı gibi erişim belirleyicileriyle birlikte bir araya getirdiğimiz sınıftır. Daha önceki derslerimizde sınıflar ve nesneler üzerine erişim belirteçlerini tartışmıştık.
Ayrıca varsayılan olarak sınıf üyelerinin özel olduğunu da biliyoruz. Sınıf üyelerini özel olarak ve sınıf üyelerine genel olarak erişme yöntemlerini ilan ettiğimizde, gerçekten kapsüllemeyi uyguluyoruz. Aynı zamanda, kamuya açık yöntemler biçiminde dış dünyaya verilerin soyut bir görünümünü sağlıyoruz.
Kapsülleme Uygulaması
C ++ 'da kapsülleme, verileri ve bu veriler üzerinde çalışan işlevleri bir arada toplayan bir sınıf olarak uygulanır. Çoğunlukla veriler, sınıf dışında erişilemeyecek şekilde özel olarak ilan edilir. Yöntemler veya işlevler genel olarak bildirilir ve sınıfın nesnesi kullanılarak erişilebilir.
Ancak, özel üyelere doğrudan erişemiyoruz ve buna veri gizleme denir. Bu yapıldığında, veriler güvence altına alınır ve yalnızca verilerin bildirildiği belirli sınıfın işlevleri tarafından erişilebilir.
// Example program #include #include using namespace std; //example class to demonstrate encapsulation class sampleData{ int num; char ch; public: //getter methods to read data values int getInt() const{ return num; } char getCh() const{ return ch; } //setter methods to set data values void setInt(int num) { this->num = num; } void setCh(char ch){ this->ch = ch; } }; int main() { sampleData s; s.setInt(100); s.setCh('Z'); cout<<'num = '< Çıktı:
num = 100
ch = Z

Yukarıdaki programda, alıcı ve ayarlayıcı yöntemleriyle birlikte iki üye değişkeni bir sınıfa paketledik. ve bu bir kapsülleme örneğidir.
Dış dünyaya erişilememeleri için iki değişken, yani num ve ch özel değişkenler olarak tanımladık. Bunlara yalnızca genel olarak ilan ettiğimiz işlevler tarafından erişilebilir. Böylece, bir sınıfta özel değişkenler olarak gizli veri üyelerimiz var.
C ++ 'da Encapsulation'ı daha iyi anlamak için başka bir örnek alalım.
#include #include using namespace std; //Accounts class: includes salary info for a particular employee class Accounts{ int empId; double salary, basic, allowances, deductions; public: Accounts(int empId):empId(empId){} //read salary info void readEmployeeInfo(int empId){ cout<<'Enter basic for the employee'< basic; cout<>allowances; cout<>deductions; } //calculate salary double calculateSalary(){ salary = basic+ allowances - deductions; return salary; } //display details void display(){ salary = calculateSalary(); cout<<'Employee: '< Çıktı:
Çalışan için temel girin1: 10000
ödenekler: 4324.43
kesintiler: 1000
Çalışan: 1
Maaş: 13324.4

Bu da bir başka kapsülleme örneğidir. Yukarıda gösterildiği gibi, hesap verilerini ve bu veriler üzerinde çalışan tüm işlevleri tek bir Hesap sınıfında toplayan bir Hesap sınıfımız var. Ana işlevde, bu sınıfın bir nesnesini oluşturabilir ve istenen bilgileri elde etmek için işlevlere erişebiliriz.
Şimdi, diğer bazı sınıflar çalışan ayrıntılarının hesap verilerine erişmek istediğini söylüyorsa, bunu doğrudan yapamaz. Hesaplar sınıfının bir nesnesini yaratması gerekecek ve yalnızca genel olan öğelere erişebilecektir. Bu şekilde, kapsülleme kullanarak verilere erişim kontrolünü garanti ederiz ve ayrıca verilerin bütünlüğünü garanti ederiz.
.jnlp dosyası nedir
Kapsülleme ve Soyutlama Arasındaki Fark
Soyutlama ve kapsülleme birbirine sıkı sıkıya bağlıdır. Kapsülleme, verileri ve bu veriler üzerinde birlikte çalışan yöntemleri bir araya getirerek soyutlamaya yardımcı olur.
Kapsülleme Soyutlama Verileri gizler Uygulamayı gizler Verileri ve yöntemleri bir araya toplar Kullanıcıya yalnızca gerekli olanı açığa çıkaran soyut bir arayüz sağlar Soyutlamaya yardımcı olur Kodun yeniden kullanımına ve güvenliğine yardımcı olur. Veri üyelerine ve yöntemlere erişimi tanımlayan erişim belirticileriyle bir sınıf olarak uygulanır Soyut bir sınıf ve somutlaştırılamayan arabirimler olarak uygulanır.
Sonuç
Kapsülleme, bize verileri gizlemek için bir yol sağladığı için OOP'nin en önemli özelliklerinden biridir. Bu da verileri daha güvenli hale getirir ve kötü amaçlı kullanımdan korur.
Kapsülleme soyutlamaya yardımcı olur, böylece yalnızca gerekli arayüzü son kullanıcıya ifşa edebilir ve diğer ayrıntıları buna göre gizleyebiliriz. Bu eğiticide, C ++ 'da soyutlama ve kapsülleme kavramlarına bir göz attık.
Yaklaşan eğitimimizde, C ++ 'da Devralma'yı örneklerle tartışacağız.
=> Özel C ++ Eğitim Öğretici Serisi İçin Burayı Ziyaret Edin.
Önerilen Kaynaklar
- C ++ 'da Veri Soyutlama
- C ++ Veri Türleri
- En İyi ÜCRETSİZ C # Eğitim Serisi: Yeni Başlayanlar İçin En İyi C # Rehberi
- ÜCRETSİZ C ++ Programlamayı Öğrenmek İçin 70+ EN İYİ C ++ Öğreticisi
- C ++ 'da Kitaplık İşlevleri
- C ++ 'da Nesne Tabanlı Programlama
- C ++ 'da Veri Yapılarına Giriş
- C ++ 'da Başlatıcı Listeleri

