Penjelasan dan Contoh Encapsulation (Enkapsulasi)

Written by: Fajar   |   Updated on: Agustus 31, 2019
encapsulation

Penjelasan Encapsulation

Encapsulation adalah sebuah konsep Object Oriented Programming digunakan untuk membungkus data dan fungsi, untuk menjaga tetap terjaga agar tidak adanya penyalahgunaan. Konsep encapsulation menyebabkan sebuah konsep OOP yang bernama “Abstraction” atau “Data Hiding”.

Encapsulation adalah sebuah teknik untuk membuat antar muka dan menyembunyikan mekanisme atau isi secara menyeluruh terhadap pengguna, dengan hal itu pengguna tidak diperbolehkan untuk mengakses data yang disembunyikan secara langsung. tapi bisa menggunakan dan memahami dengan mudah berdasarkan antar muka yang telah disediakan.

Pada dunia nyata kita dapat ambil contoh sebuah Remote TV untuk menggambarkan encapsulation. Apa yang kita liat pada Remote TV adalah sebuah bentuk dan banyak tombol di atasnya. Encapsulation pada Remote TV adalah dimana mesin atau mekanisme cara kerja dan data yang dimiliki Remote tersembunyi pada kulitnya yang keras, dan kita dilarang untuk membongkar, mengakses, memodifikasi secara langsung. Dan apa yang bisa kita gunakan adalah tombol-tombol yang telah disediakan untuk memberi perintah kepada Remote TV melakukan pekerjaanya.

Contoh Program Encapsulation

#include <iostream>
using namespace std;

class remoteTV{
private:
    string tombolNo[10];
public:
    void setTombolNo(int i, string value){
        tombolNo[i] = value;
    }
    string getTombolNo(int i){
        return tombolNo[i];
    }
};

int main(){
    remoteTV ruangTamu;

    ruangTamu.setTombolNo(0, "Channel BCPP");
    ruangTamu.setTombolNo(1, "Channel BelajarCPP");
    ruangTamu.setTombolNo(2, "Channel CPP");
    ruangTamu.setTombolNo(3, "Channel C");

    cout<<ruangTamu.getTombolNo(0)<<endl;
    cout<<ruangTamu.getTombolNo(1)<<endl;
    cout<<ruangTamu.getTombolNo(2)<<endl;
    cout<<ruangTamu.getTombolNo(3)<<endl;

   return 0;
}

Pada contoh program di atas menggunakan konsep Encapsulation dimana kita tidak bisa dengan mudah mengakses variabel tombolNo secara langsung, dan harus menggunakan perantara menggunakan fungsi yang dinamakan teknik “Setter dan Getter”.

Syarat Encapsulation

Setelah penulis contohkan di atas, untung mengimplementasikan sebuah konsep encapsulation, dibutuhkan syarat sebagai berikut:

  • Data dan fungsi yang disembunyikan harus berlabel private atau protected(jika dibutuhkan untuk hubungan antar class), agar tidak bisa diakses secara sembarang dan disalahgunakan.
  • Data dan fungsi yang digunakan untuk antarmuka harus berlabel public.
Baca :   Pengertian dan Ketentuan Memberikan Indentitas pada Kode Program

Kesimpulan

Dari apa yang telah kita pelajari mengenai access specifier di artikel sebelumnya, encapsulation adalah dimana kemampuan kita untuk mengorganisasi kode kita dengan pemahaman menggunakan access specifier dimana teknik ini akan mengarahkan anda ke sebuah teknik Abstraction, dimana kita harus menyembunyikan data yang harus disembunyikan agar tidak disalahgunakan dan hanya membagikan sedikit data sebagai antar muka yang memang layak diberikan.


Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *