Contoh Source Code Java OOP dengan Inherance dan Enkapsulasi

April 03, 2016

Assalamu'alaikum,


KuReview  - menginjak semester 4 di Teknik informatika di UIN Malang. Maka sudah sewajarnya untuk belajar PBO(Pemrograman Berorientasi Objek). Yah, saat ini saya sedang menempuh mata kuliah PBO Java Reguler dan Praktikum PBO Java.

Kesempatan kali ini, saya ingin membagikan kepada teman-temanku semua contoh sederha , Contoh Source Code Java OOP dengan Inherance dan Enkapsulasi dimana ini merupakan jawaban UTS Praktikum Java.

Kelebihannya adalah :
1. Console
2. Menginputkan data yang ada
3. Menjumlahkan data yang telah diinputkan
4. Menu untuk bisa memilih

disini saya menerapkan dua konsep Java OOP yaitu Encapsulasi dan Inherance karena memang ketika UTS materinya hanya sampai disitu.

Langsung saja, berikut ini merupakan Contoh Source Code Java OOP dengan Inherance dan Enkapsulasi :

Kelas Induknya adalah "induk class"




/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package uts_d_14650068_29;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 *
 * @author LAB_TI
 */
public class induk {
    private int jumlah_pns,jumlah_nonpns,lainnya,jumlah_penduduk;
public induk(int jumlah_pns,int jumlah_nonpns,int lainnya,int jumlah_penduduk){
    this.jumlah_nonpns = jumlah_nonpns;
    this.jumlah_pns = jumlah_pns;
    this.lainnya = lainnya;
    this.jumlah_penduduk= jumlah_penduduk;
}

public String getInduk(){
    return ("Jumlah PNS: "+jumlah_pns+
            "\n Jumlah Non PNS"+jumlah_pns+
            "\n Jumlah Lainnya: "+lainnya+
            "\n Jumlah Penduduk : "+jumlah_penduduk);
    
}


    
  
    
}



Induk Class ini memiliki anak class yaitu, class surabaya, malang dan lamongan.

1. Class Malang





package uts_d_14650068_29;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 *
 * @author LAB_TI
 */
class malang extends induk{
    public malang(int jumlah_pns,int jumlah_nonpns,int lainnya,int jumlah_penduduk){
        super( jumlah_pns, jumlah_nonpns,lainnya,jumlah_penduduk);
    }
    public String getMalang(){
        return ("Area : Malang \n"+super.getInduk());
        
    }
}



2. Class Lamongan



package uts_d_14650068_29;

/**
 *
 * @author LAB_TI
 */
class lamongan extends induk{
    public lamongan(int jumlah_pns,int jumlah_nonpns,int lainnya,int jumlah_penduduk){
        super( jumlah_pns, jumlah_nonpns,lainnya, jumlah_penduduk);
    }
    public String getLamongan(){
        return ("Area : Lamongan \n"+super.getInduk());
    }
}


3. Class Surabaya



package uts_d_14650068_29;

/**
 *
 * @author LAB_TI
 */
class surabaya extends induk{
    public surabaya(int jumlah_pns,int jumlah_nonpns,int lainnya,int jumlah_penduduk){
        super( jumlah_pns, jumlah_nonpns,lainnya, jumlah_penduduk);
    }
    public String getSurabaya(){
        return ("Area : Surabaya \n"+super.getInduk());
    }
}



Selanjutnya, nanti semua kelas tersebut akan di panggil pada kelas "pusat" di pusat class.


Pusat class :





package uts_d_14650068_29;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 *
 * @author LAB_TI
 */
public class pusat {
    
    public static void main(String[] args) throws IOException{
        pusat utama = new pusat();
        utama.menu();
    }
    void menu() throws IOException{
        
        BufferedReader masukan = new BufferedReader(new InputStreamReader(System.in));
        System.out.println("Pilih Kode Area \n1. Malang \n 2. Surabaya\n3. Lamongan\n 4. Exit");
        System.out.println("Kode Area: ");
        String pilih = masukan.readLine();
        int jumlah_pns,jumlah_nonpns,lainnya,jumlah_penduduk;
        switch (pilih){
            case "1":
                System.out.println("Wilayah Malang");
                System.out.println("Jumlah Penduduk PNS: ");jumlah_pns = Integer.parseInt(masukan.readLine());
                System.out.println("Jumlah Penduduk Non PNS: ");jumlah_nonpns =Integer.parseInt(masukan.readLine());
                System.out.println("Jumlah Penduduk Lainnya: ");lainnya =Integer.parseInt(masukan.readLine());
                jumlah_penduduk=jumlah_nonpns+jumlah_pns+lainnya;
                
                System.out.println("============================");
                System.out.println("Persentasi");
                System.out.println("PNS: "+jumlah_pns * 100/ jumlah_penduduk+"%");
                System.out.println("Non PNS: "+jumlah_nonpns * 100/ jumlah_penduduk+"%");
                System.out.println("Lainnya: "+lainnya * 100/ jumlah_penduduk+"%");
                malang kota1 = new malang(jumlah_pns,jumlah_nonpns,lainnya,jumlah_penduduk);
                System.out.println(kota1.getMalang());
                System.out.println("============================");
                mengulang();
                break;
            case "2":
                System.out.println("Wilayah Surabaya");
                System.out.println("Jumlah Penduduk PNS: ");jumlah_pns = Integer.parseInt(masukan.readLine());
                System.out.println("Jumlah Penduduk Non PNS: ");jumlah_nonpns =Integer.parseInt(masukan.readLine());
                System.out.println("Jumlah Penduduk Lainnya: ");lainnya =Integer.parseInt(masukan.readLine());
                jumlah_penduduk=jumlah_nonpns+jumlah_pns+lainnya;
                System.out.println("============================");
                System.out.println("Persentasi");
                System.out.println("PNS: "+jumlah_pns * 100/ jumlah_penduduk+"%");
                System.out.println("Non PNS: "+jumlah_nonpns * 100/ jumlah_penduduk+"%");
                System.out.println("Lainnya: "+lainnya * 100/ jumlah_penduduk+"%");
                surabaya kota2 = new surabaya(jumlah_pns,jumlah_nonpns,lainnya,jumlah_penduduk);
                System.out.println(kota2.getSurabaya());
                System.out.println("============================");
                mengulang();
                break;
            case "3":
                System.out.println("Wilayah Lamongan");
                System.out.println("Jumlah Penduduk PNS: ");jumlah_pns = Integer.parseInt(masukan.readLine());
                System.out.println("Jumlah Penduduk Non PNS: ");jumlah_nonpns =Integer.parseInt(masukan.readLine());
                System.out.println("Jumlah Penduduk Lainnya: ");lainnya =Integer.parseInt(masukan.readLine());
                jumlah_penduduk=jumlah_nonpns+jumlah_pns+lainnya;
                System.out.println("============================");
                System.out.println("Persentasi");
                System.out.println("PNS: "+jumlah_pns * 100/ jumlah_penduduk+"%");
                System.out.println("Non PNS: "+jumlah_nonpns * 100/ jumlah_penduduk+"%");
                System.out.println("Lainnya: "+lainnya * 100/ jumlah_penduduk+"%");
                lamongan kota3 = new lamongan(jumlah_pns,jumlah_nonpns,lainnya,jumlah_penduduk);
                System.out.println(kota3.getLamongan());
                System.out.println("============================");
                mengulang();
                break;
            
            default:
                System.out.println("Maaf Data tidak ada");
                break;
        }
       
    }
    
    
    
void mengulang() throws IOException{
      
    BufferedReader masukan = new BufferedReader (new InputStreamReader(System.in));
        System.out.println("Apakah ingin kembali ? (Y/N)");
        System.out.print("Pilihan Anda : ");
        String memilih2=masukan.readLine();
        switch(memilih2){
            case "y":
                menu();
                break;
            case "n":
                System.out.println("Anda Memilih Exit");
                break;
            default:
                System.out.println("Pilihan Anda tidaka ada");
                break;
        }
    }
    void persentase(){
        
        
    }
} 






Hasil Akhir Aplikasinya seperti dibawah ini, yang telah di screenshoot :

Contoh Source Code Java OOP dengan Inherance dan Enkapsulasi
Tested Program
Namun, bisa dibilang source code yang saya bagikan ini amsih boros atau masih belum terlalu sederhana. terlihat apda switch case masih ada beberapa perulangan code yang masih tidak perlu. Jadi, sekiranya masih ada usulan coding yang lebih baik, silahkan berkomentar. Terima Kasih

Cukup itu saja postingan dan artikel pada malam hari ini. Terima kasih buat teman-teman yang telah berkunjung ke KuReview yang sederhana ini.

JIka ada pertanyaan terkait dengan Contoh Source Code Java OOP dengan Inherance dan Enkapsulasi silahkan berkomentar di bawah.

You Might Also Like

0 komentar

- Berkomerntarlah dengan menggunakan bahasa yang mudah di mengerti.

-Apabila review di KuReview terdapat kesalahan, atau pun ingin memberikan kritik dan saran, silahkan menghubungi kami di Contact Us