Langsung ke konten utama

Menerapkan dan Menyajikkan Konsep Enkapsulasi Dalam Melindungi Data dan informasi

Indikator Pencapaian Kompetensi dan Tujuan Pembelajaran

IPK Pengetahuan

  1. Menjelaskan konsep dan tujuan proses enkapsulisasi dalam pemrograman aplikasi berorientasi obyek.
  2. Menjelaskan prosedur enkapsulisasi dalam pemrograman aplikasi berorientasi obyek.
  3. Menjelaskan persyaratan proses enkapsulisasi dalam pemrograman aplikasi berorientasi obyek.
  4. Menerapkan prosedur enkapsulisasi dalam pemrograman aplikasi berorientasi obyek.

IPK Keterampilan

  1. Merancang program aplikasi berorientasi obyek dengan penerapan enkapsulisasi dalam melindungi data dan informasi.
  2. Membuat kode program aplikasi berorientasi obyek yang menerapkan enkapsulisasi.
  3. Menguji program aplikasi berorientasi obyek yang menerapkan enkapsulisasi

TujuanPembelajaran

Setelah melalui kegiatan diskusi, menggali informasi, presentasi dan tugas praktek diharapkan peserta didik akan dapat :
  1. Siswa dapat Menjelaskan konsep dan tujuan proses enkapsulisasi dalam pemrograman aplikasi berorientasi obyek dengan baik.
  2. Siswa dapat Menjelaskan prosedur enkapsulisasi dalam pemrograman aplikasi berorientasi obyek dengan baik.
  3. Siswa dapat Menjelaskan persyaratan proses enkapsulisasi dalam pemrograman aplikasi berorientasi obyek dengan baik.
  4. Siswa dapat Menerapkan prosedur enkapsulisasi dalam pemrograman aplikasi berorientasi obyek dengan baik.
  5. Siswa dapat Membuat kode program aplikasi berorientasi obyek yang menerapkan enkapsulisasi dengan baik.

Materi Kegiatan Pembelajaran


Enkapsulasi adalah suatu cara untuk menyembunyikan implementasi detail dari class untuk mencegah akses yang ilegal.

Dasar dari enkapsulasi yaitu menyembunyikan informasi dan interface untuk mengkses suatu data.

1. Menyembunyikan informasi adalah menyembunyikan informasi dari suatu class agar tidak bisa diakses dari luar class, caranya hanya dengan memberikan modifier private pada variabel yang ingin kita sembunyikan.

2. Interface untuk mengkses data maksudnya suatu cara kita untuk mengubah nilai pada suatu variabel yang telah dilakukan penyembunyian informasi (information hidding).


Cara yang biasa dilakukan mengubah data adalah dengan melalui method, lewat method ini kita bisa merubah nilai suatu variabel yang telah kita sembunyikan.


Enkapsulasi tersebut terdiri dari tiga jenis yaitu public, protected, dan private.


1. Access Public

Merupakan kata kunci yang digunakan dalam java yang memungkinkan setiap variabel dan method yang dideklarasikan dalam class public dapat diakses oleh semua class yang sama, subclass atau non subclass yang sama di package yang sama, subclass dan non subclass di package yang berbeda.


2. Access Protected

Merupakan kata kunci yang dideklarasikan untuk memproteksi suatu class agar setiap variabel dan method yang dideklarasikan tidak dapat di akses oleh non subclass di dalam package yang sama.

Dalam class protected, yang dapat mengakses variabel dan method nya adalah jika methodnya berada pada class nya sama, subclass dan non sub yang sama di package yang sama, dan subclass di package yang berbeda.


3. Access Private

Merupakan kata kunci yang dideklarasikan dalam suatu class agar setiap variabel dan method yang berada dalam class private ini hanya dapat diakses oleh class yang sama.

Didalam bahasa pemrograman java class yang bersifat private memproteksi agar semua variabel dan methodnya tidak dapat di akses oleh semua subclass dan non subclass di package yang sama, dan subclass dan non subclass di package yang berbeda.

Untuk berinteraksi dengan sebuah objek pada PBO, kita tidak bisa mengakses atau mengubah atribut yang bersifat private yang ada di dalam sebuah objek tersebut. Kita dapat berinteraksi dengan objek hanya melalui atribut / metode yang bersifat public.













Contoh Program

/**
 * @(#)MotorKopling.java
 *
 *
 * @author 
 * @version 1.00 2020/8/15
 */

public class MotorKopling {
    
    //Atribut
    private int kecepatan;
    private boolean nyala;
    
    public MotorKopling(){// <-- konstruktor        
        nyala = false; // <-- inisialisasi kondisi awal yaitu mati
        kecepatan = 0; // <-- inisialisasi kecepatan awal yaitu 0                
    }
    
    public void power(boolean nyala){        
        this.nyala = nyala;
       
        if(!nyala){ // <-- jika power mati maka kecepatan akan sama dengan 0
            kecepatan = 0;
        System.out.println("Motor mati!");               
        } else
        {
        System.out.println("Motor Hidup!");        
        }
       
    }
    
    //Imajinasikan bahwa Motor memiliki 3 perseneling 
    //3 perseneling untuk mengatur kecepatan, yaitu Pelan,Sedang dan Kencang.

    public void kecepatanPelan(){
        this.kecepatan = 1;
        System.out.println("Kecepatan pelan!");
    }
    
    public void kecepatanSedang(){
        this.kecepatan = 2;
        System.out.println("Kecepatan Sedang!");         
    }
    
    public void kecepatanKencang(){
        this.kecepatan = 3;
        System.out.println("Kecepatan Kencang!");         
    }
    
}
class MotorKoplingRun{
    public static void main(String[] args) {
        
        MotorKopling objMotorKopling = new MotorKopling();// <-- membuat objek 
        
        objMotorKopling.power(true);// <-- menyalakan motor
        objMotorKopling.kecepatanPelan();// <-- mengubah kecepatan menjadi pelan
        objMotorKopling.kecepatanSedang();// <-- mengubah kecepatan menjadi sedang
        objMotorKopling.kecepatanKencang();// <-- mengubah kecepatan menjadi kencang
        objMotorKopling.power(false);// <-- mematikan matikan motor
        
    }
}




Tugas / Penilaian


1.Ubahlah contoh program di atas dengan mengubah motor menjadi mobil
2. Tambahkan method memanaskan mobil pada program tersebut


Komentar

Postingan populer dari blog ini

Soal dan Jawaban Pemrograman Java 1

I. ESSAY TERSTRUKTUR 1. Konsep dasar object (object Oriented) meliputi 3 hal, Sebutkan ! 2. Sebagai sebuah platform, Java terdiri atas dua bagian utama, yaitu sebagai ? 3. Sebutkan 3(tiga) arsitektur Java menurut Sun ? 4. Sebutkan minimal 3 atribut/data  yang melekat pada diri anda bila anda dipandang sebagai objek ? 5. Sebutkan minimal 3 method/"perilaku" yang melekat pada diri anda jika anda dipandang sebagai objek ? 6. Sebutkan 5 bagian dari bagan dasar program java ! (Catatan : hanya menyebutkan saja, detil bagiannya tak perlu dijelaskan ) 7. Untuk penulisan komentar beberapa baris pada program java supaya tidak akan diproses oleh ‘virtual mechine’, caranya adalah dengan memberikan tanda awal yaitu tanda a)….. dan diakhiri dengan tanda b)…., sedangkan komentar untuk satu baris dapat menggunakan tanda c) …. 8. Sebutkan 2(dua) kelompok “Error” dalam pemograman java? 9. Sebutkan minimal sepuluh buah katakunci bahasa java (Java Keyword) yang kalian ...

Soal Jawab Algoritma : Percabangan

Dalam suatu perhitungan, ditentukan bahwa nilai P = X + Y. Jika nilai P positif, maka lakukan operasi Q = X * Y, sedangkan jika negative maka nilai Q = X/Y. Buatlah algoritma atau flowchart untuk mencari nilai P dan Q Jawab: Yang menjadi input dalam perhitungan ini  adalah variabel X dan Y Proses perhitungannya adalah P = X + Y Kondisinya adalah jika P > 0 (P positif) maka hitung Q = X*Y jika P < 0 maka Q = X/Y Algoritma HitXY deklarasi X, Y, P, Q : Integer Deskripsi begin read(X,Y) P = X + Y if P > 0 then Q = X*Y if P < 0 then Q = X/Y Write(P,Q) end ja        Kasus 1 Jika variabel nilai X =  10 dan nilai Y = 5  Maka dari algoritma di atas  hasil atau keluaran : Rumus P awal adalah P =X + Y Jadi P= 10 +5 = 15 Maka hasil ahir : un  untuk Q adalah Q = X * Y yaitu 10 * 5 = 50 Kasus 2 Jika variabel nilai X =  -10 dan nilai Y = 5  Maka dari algoritma di atas  hasil atau keluaran : Rumus P aw...

Algoritma Konversi Bilangan Desimal ke Binary Dengan Program HTML-PHP

Dengan memahami contoh ini diharapkan programmer memahami : - Penggunaan Form dalam HTML  +  PHP - Looping/perulangan dengan perintah do while dan for - Konversi integer ke string - Penggabungan string - Pengigunaan temporary variabel Algoritma Konversi Bilangan Desimal ke bilangan Biner dengan Program HTML-  PHP Bagaimana caranya membuat program konversi bilangan desimal ke bilangan biner ?: Contoh :  Masukan angka : 100  maka outputnya seperti ini. 100:2=50 sisa=0 50:2=25 sisa=0 25:2=12 sisa=1 12:2=6 sisa=0 6:2=3 sisa=0 3:2=1 sisa=0 1:2=0 sisa=1 Desimal 100 Binari 1000100 Analisis masalah dan logika adalah sebagai berikut. Input adalah : sembarang bilangan yang dimasukan melalui keyboard Prosesnya adalah dengan looping atau perulangan dengan WHILE.. DO Akhir dari perulangan adalah saat HASIL BAGI bilangan menjadi 0 Karena memakai logika per ulangan,  Untuk itu DIPERLUKAN LOGIKA TUKAR TEMPAT melalui BANTUA...