Mengenal Fungsi Type Casting dalam Java

Mengenal Fungsi Type Casting dalam Java


Assalamualaikum Warahmatullahi Wabarakatuh.

Didalam bahasa pemrograman Java, Type Casting digunakan untuk menentukan serta mengubah suatu nilai atau value dari satu tipe data ke tipe data lainnya. Misalnya jika kita mempunyai variable w dengan tipe data Integer, kita dapat menentukan nilai dari vaieble w menjadi tipe data float atau sebaliknya dari tipe data float menjadi Integer. Terdapat 2 jenis Type Casting pada Java, yaitu Implicit Casting dan Explicit Casting.

Mengenal Fungsi Type Casting dalam Java

Materi Lainnya Yang Direkomendasikan:

Pada bahasa pemrograman Java terdapat 2 jenis Type Casting yaitu Implicit dan Explicit, keduanya digunakan untuk mengubah nilai variable satu tipe data yang membedakan dari kedua jenis tersebut adalah, Implicit digunakan untuk mengubah dari Tipe Data kecil ke Tipe Data besar, contohnya Byte ke Long atau Short ke Double.

A. Widening Conversion (Implicit Casting)

Implicit Casting digunakan untuk mengubah nilai dari tipe data kecil ke tipe data besar, seperti berikut ini:
  • Dari tipe data short ke tipe data int, long, float, atau double
  • Dari tipe data int ke dalam tipe data long, float, atau double
  • Dari tipe data char ke dalam tipe data int, long, float, atau double
  • Dari tipe data float ke dalam tipe data double
  • Dari tipe data long atau ke dalam tipe data float atau double
  • Dari tipe data byte ke tipe data short, int, long, float, atau double

Contoh program dari Implicit Casting pada Java:

package WILDAN_TECHNO_ART;

public class latihan_java {
    public static void main(String[] args){
        
        short data1 = 457;
        double double_data = data1; //short le double
        
        char data2 = 'W';
        long long_data = data2;//char ke long
        
        int  data3 = 456;
        float int_data = data3;// int ke float
        
        byte data4 = 127;
        long long_data2 = data4;//byte ke long
        
        float data5 = 565.3f;
        double double_data2 = data5;//float ke double
        
        System.out.println("Short ke Double: "+ double_data);
        System.out.println("Char ke Long: "+long_data);
        System.out.println("Int ke Float: "+int_data);
        System.out.println("Byte ke Long: "+long_data2);
        System.out.println("Float ke Double: "+double_data2);
    }
}

Demo:

Penggunan Implicit Type Casting pada Java

B. Narrow Conversion (Explicit Casting)

Explicit Casting adalah kebalikan dari Implicit Casting yaitu untuk mengubah nilai dari tipe data besar ke tipe data kecil, seperti ini:
  • Dari tipe data short ke byte atau char
  • Dari tipe data double ke byte, short, char, int, long atau float
  • Dari tipe data char ke byte atau short
  • Dari tipe data long ke byte, short, char atau int
  • Dari tipe data int ke byte, short, atau char
  • Dari tipe data float ke byte, short, char, int atau long
  • Dari tipe data byte ke dalam tipe data char

Contoh program dari Explicit Casting pada Java:

package WILDAN_TECHNO_ART;

public class latihan_java {
    public static void main(String[] args){
        
        short data1 = 3;
        char char_data = (char) data1; //short le char
        
        long data2 = 246447;
        byte byte_data = (byte) data2;//long ke byte
        
        int  data3 = 34;
        char char_data2 = (char) data3;// int ke char
        
        char data4 = 1;
        short short_data2 = (short) data4;//char ke short
        
        double data5 = 345.3;
        float float_data2 = (float) data5;//double ke float
        
        System.out.println("Short ke Char: "+ char_data);
        System.out.println("Long ke Byte: "+byte_data);
        System.out.println("Int ke Char: "+char_data2);
        System.out.println("Char ke Short: "+short_data2);
        System.out.println("Double ke Float: "+float_data2);
    }
}

Demo:

Penggunan ExplcitType Casting pada Java

Sekian materi dari saya, mengenai fungsi Type Casting pada Java, Semoga bermanfaat.

Wassalamualaikum Warahmatullahi Wabarakatuh.

Mengenal Fungsi Garbage Collection pada Java

Mengenal Fungsi Garbage Collection pada Java


Assalamulaikum Warhmatullahi Wabarakatuh.

Pada Java, Garbage Collection adalah mekanisme Java untuk menghapus suatu objek dari memori tanpa perlu dideklarasikan secara eksplisit dalam program. Berfungsi untuk meningkatkan Management Memory yaitu kita dapat menghemat penggunaan memori, java akan menghapus sebuah objek yang tidak diperlukan atau tidak di referensikan lagi, ruang memori pada objek tersebut akan dimanfaatkan untuk keperluan lain sehingga tidak ada pemborosan memori. Garbage Collection merupakan salah satu mekanisme dari fitur JVM (Java Virtual Machine). Ini adalah salah satu kelebihan dari bahasa pemrograman Java.

Mengenal Fungsi Garbage Collection pada Java

Pada materi berikut ini kita akan belajar mengenai fungsi Garbage Collection pada Java, dengan contoh program sederhana yang menggambarkan bagaimana Garbage Collection tersebut berfungsi.

Materi Lainnya Yang Direkomendasikan:

Garbage Collection pada Java

Sebagai seorang programmer yang handal, aplikasi atau program yang kita buat harus memiliki penggunaan memori yang kecil atau seminimal mungkin, karena dengan begitu, program yang kita buatpun menjadi lebih handal juga.

Salah satu kelebihan dari pemrograman Java adalah kita dapat menigkatkan efisiensi pada memori, dengan membuang objek yang tidak terpakai atau tidak direferensikan, ini akan secara otomatis dikontrol oleh JVM (Java Virtual Machine).

Untuk melihat bagaimana cara kerja Garbage Collection pada java, kita dapat menambahkan codingan, seperti method finalize() dan juga System.gc(). Contoh Sederhananya seperti berikut ini:

package WILDAN_TECHNO_ART;

public class Balok {
    
    //Method ini akan ditampilkan jika Garbage Collection bekerja
    public void finalize(){
        System.out.println("Objek Yang Tidak Terpakai Sudah Dibersihkan:");
    }
    
    public static void main(String[] args){
        Runtime RT = Runtime.getRuntime();
        System.out.println("Jumlah Memori Awal: "+RT.totalMemory());
        
        Block objek1 = new Block(); //Block Satu
        Block objek2 = new Block(); //Block Dua
        Block objek3 = objek1; //Objek3 Mengembalikan Nilai Objek1
        objek1 = null;
        objek2 = null;
        System.out.println("Jumlah Memori Yeng Tersedia Sebelum di GC: "+RT.freeMemory());
        System.gc();
        System.out.println("===========================================");
        System.out.println("Jumlah Memori Yeng Tersedia Setelah di GC: "+RT.freeMemory());
    }
}

Demo:


Contoh Penggunaan Garbage Collection pada Java

Penjelasan:

Pada program tersebut, disana kita membuat 3 buah objek atau variable dari Class Balok, objek1 dan objek2 diinisialisasikan kedalam Balok1 dan Balok2, dan objek3 mempunyai nilai kembali dari objek Balok1.

Contoh Gambar Garbage Collection 1

Pada baris selanjutnya, objek1 dan objek2 kita ubah nilainnya menjadi null yang berarti kosong, sedangkan objek3 masih mengembalikan nilainya objek1.

Contoh Gambar Garbage Collection 2

Karena pada Balok2 tidak ada yang direferensikan nilainya, maka secara otomatis, Balok2 tersebut akan di bawa oleh System Garbage Collection pada JVM.

Contoh Gambar Garbage Collection 3

System.gc(), berfungsi untuk menjalankan Garbage Collection pada java. lalu Method finalize(), digunakan untuk memastikan bahwa objek telah bersih dan Garbage Collection telah bekerja, Di dalam metode finalize(), kita dapat menentukan tindakan yang harus dilakukan sebelum suatu objek hancur.

Dan terakhir, kita menambahkan sebuah variable Runtime, yang digunakan untuk mengecek Total Memori serta Jumlah Memori yang tersedia sebelum dan sesudah di Garbage Collection.

Itulah salah satu contoh sederhana dari penggunaan Garbage Collection pada Java, semoga meteri yang saya berikan bisa bermanfaat untuk kalian semua, jika terdapat kekurangan, saya mohon maaf.

Wassalamulaikum Warahmatullahi Wabarakatuh.

Belajar Memahami Nested Loops pada Java

Belajar Memahami Nested Loops pada Java


Assalamualaikum Warahmatullahi Wabarakatuh.

Looping atau Perulangan pada bahasa pemrograman adalah salah satu perintah yang digunakan untuk mengeksekusi sebuah statement berulang kali sampai dengan kondisi yang telah ditentukan, untuk membuat statement perulangan pada java, kita dapat menggunakan kata kunci for, while, do-while. Dalam java, kata dapat membuat sebuah statement perulangan didalam perulangan atau looping bersarang, dalam java istilah tersebut dapat dinamakan Nested Loops, misalnya for didalam for, while didalam while atau while didalam for.

Belajar Memahami Nested Loops pada Java

Pada materi kali ini, kita akan belajar untuk memahami fungsi dari Nested Loops serta contoh penggunaannya didalam program java, Nested Loops atau perulangan bersarang, biasanya digunakan pada sebuah statement yang memerlukan suatu proses yang panjang, misalnya mencetak nilai pada Array 2D/Multidimensi atau menjalankan Thread pada program multi tasking, dsb. Untuk lebih jelasnya, mari kita bahas pada tutorial berikut ini.

Materi Yang Harus Kalian Kuasai Sebelumnya:

Nested Loops pada Java

Kita dapat membuat sebuah perulangan bersarang dengan menggunakan keyword for, while, do-while. Pada contoh yang pertama ini, kita akan mencoba membuat sebuah program, dimana pada program tersebut akan menampilkan bentuk Segitiga Siku-Siku dengan simbol (*),  menggunakan Looping bersarang for didalam for.

package WILDAN_TECHNO_ART;

import java.util.Scanner;

public class latihan_java {
    public static void main(String[] args){
        //Membuat Instance Scanner
        Scanner input = new Scanner(System.in);
        System.out.print("Masukan Jumlah Baris: ");
        int j_baris = input.nextInt(); //Menentukan Jumlah Baris
        
        //Menghitung Jumlah Baris (Outer for)
        for(int baris=1; baris<=j_baris; baris++){
            
            //Mencetak Simbol * (Inner for)
            for(int s=1; s<=baris; s++){
                System.out.print("* ");
            }
            
            //Membuat Baris Baru
            System.out.println();
        }
    }
}

Demo:

Contoh Penggunaan Nested Loop pada Java

Penjelasan:

Pada program tersebut, user diharuskan untuk memasukan input berupa panjang atau jumlah baris bintang yang akan ditampilkan, for (outer) digunakan untuk menghitung jumlah baris pada program, setiap for (inner) selesai di eksekusi, maka akan membuat baris baru.

for (Inner) digunakan untuk mencetak simbol * pada layar, jumlah simbol yang ditampilkan perbarisnya akan menysuaikan dengan nilai pada variable baris. Setelah for (Inner) selesai di eksekusi, lalu membuat baris baru. Selanjutnya program akan melooping sesuai dengan jumlah baris yang di inputkan user.

Untuk contoh yang kedua, kita akan menggunakan sebuah array 2D dan mencetak semua data pada array tersebut menggunakan for bersarang atau Nested Loops.

package WILDAN_TECHNO_ART;

public class latihan_java {
    public static void main(String[] args){
        String[][] programming = {{"JAVA", "KOTLIN", "C++"},
                                  {"PHP", "RUBY", "CSS"},
                                  {"JS", "PYTHON", "C#"}
        };
        
        for(int b=0; b<programming.length; b++){
            
            for(int k=0; k<programming[b].length; k++){
                System.out.println(programming[b][k]);
            }
            
        }
    }
}

Demo:

Contoh Penggunaan Nested Loop Menggunakan Array pada Java

Program tersebut akan mencetak semua nilai pada Array 2D, for (outer) digunakan untuk menghitung nilai pada baris array dan for (inner) digunakan untuk menghitung nilai pada kolom Array. Variable b digunakan untuk memilih baris pada Array dan k digunakan untuk memilih kolom pada Array. Kika kalian ingin menampilkan nilai Array menggunakan for-loops, disarankan untuk menggunakan konsep for-each agar lebih mudah dan praktis.

Terakhir, kita akan membuat program yang lebih sulit dibandingkan dengan contoh sebelumnya, yaitu membuat Segitiga Piramida mengguakan simbol (*).

package WILDAN_TECHNO_ART;

import java.util.Scanner;

public class piramida {
    public static void main(String[] args){
        //Instance/Objek Input Scanner
        Scanner input = new Scanner(System.in);
        System.out.print("Masukan Input: ");
        int tinggi = input.nextInt(); //Mendapatkan Input Dari User
        
        for(int t=1; t<=tinggi; t++){
            //Menghitung Jumlah Tinggi Piramida
            
            for(int s=t; s<=tinggi; s++){
                //Menghitung Jumlah Spasi per Baris
                System.out.print(" ");
            }
            
            for(int b=0; b<=(t*2)-2; b++){
                //Menghitung Jumlah Bintang per Baris
                System.out.print("*");
            }
            
            System.out.println(); //Membuat Baris Baru
        }
    }
}


Demo:

Contoh Program Segitiga Piramida Menggunakan Java

Pada source code tersebut, kita menggunakan 3 buah for-loops, pertama for (outer) digunakan untuk menghitung baris, lalu didalmnya terdapat 2 buah for (inner) yang digunakan untuk menghitung spasi dan jumlah bintang yang akan ditampilkan. Untuk penjelasan yang lebih detailnya, kalian bisa lihat Disini.

Sekian dari saya, semoga bermanfaat.

Wassalamualaikum Warahmatullahi Wabarakatuh.

Perbedaan for-loops dengan for-each pada Java

Perbedaan for-loops dengan for-each pada Java


Assalamualaikum Warahmatullahi Wabarakatuh.

For-Each merupakan perulangan for dengan syntax yang agak berbeda dari biasanya, fungsi ini digunakan untuk menampilkan data dari sebuah Array. Seperti yang kita tahu, Looping/perulangan merupakan salah satu fungsi yang sangat penting dalam dunia programming, kita sebagai seorang programmer atau developer wajib untuk mempelajari dan menguasai fungsi tersebut.

Berbedaan for-loops dengan for-each pada Java

For-Each adalah salah satu fitur terbaru dari Java versi 5, dengan menggunakan for-each, kita dapat dengan mudah untuk mencetak semua data array pada program. Lalu apa yang membedakan for-each dengan for-loops bisa?. Pada tutorial ini, kita akan belajar mengenai perbedaan, fungsi serta contoh programnya.

Materi Lainnya Yang Direkomendasikan:

For-Loops dan For-Each pada Java

for adalah salah satu keyword yang digunakan untuk membuat statement perulangan atau bisa disebut looping, selain while dan do-while. terdapat 2 jenis syntax/cara penulisan pada for-loops yang bisa kalian gunakan pada java, kedua jenis tersebut mempunyai fungsi yang sama, tetapi berbeda.

For-Each pada umumnya digunakan untuk mencetak sebuah data Array, karena lebih simple dan praktis dibandingak dengan menggunakan for-loops biasa. Perbedaan cara penulisan atau syntax for-loops biasa dengan for-each, seperti berikut ini.

Syntax dasar pada for-loops:

for(inisialisasi_variable; kondisi; stepExpression){
  //Statement Yang Akan di Looping
}

Syntax dasar pada for-each:

for(Insialisasi Variable : Array){
  //Statement atau Data Array Yang Ingin Dicetak
}

Pada meteri berikut ini, pertama kita akan membuat sebuah progam dengan menambakan Variable Array yang sudah kita set nilai-nilainya dan mencetak semua data array tersebut meggunakan for-loops.

package WILDAN_TECHNO_ART;

public class latihan_java {
    public static void main(String[] args){
        //Membuat Variable Array dengan Tipe Data String
        String[] mahasiswa = {"Wildan", "Adibil", "Taufan", "Hanny", "Siti"};
        //Mencetak Semua Data Pada Array Mahasiswa
        for(int w=0; w<mahasiswa.length; w++){
            System.out.println(w+". Nama Mahasiswa: "+mahasiswa[w]);
        }
        
        System.out.println("========================================");
        
         //Membuat Variable Array dengan Tipe Data Integer
        int[] nomor = {15,22,31,43,55,67,79};
        //Mencetak Semua Data Pada Array Nomor
        for(int w=0; w<nomor.length; w++){
            System.out.print(nomor[w]+" ");
        }
        
        System.out.println();
    }
}

Demo:

Contoh penggunaan for-loops pada java

Itu merupakan contoh penggunaan for-loops yang pertama, pada program tersebut, statement didalam kedua for tersebut akan melooping sesuai dengan jumlah atau panjang array dengan menggunakan fungsi .length, digunakan untuk menghitung jumlah array, lalu mencetak semua data yang ada didalam array tersebut.

Selanjutnya, untuk menampilkan nilai array, agar lebih praktis dan mudah, kita dapat menggunakan syntax for-each, seperti berikut ini:

package WILDAN_TECHNO_ART;

public class latihan_java {
    public static void main(String[] args){
        String[] Programming = {"Java", "Kotlin", "C++", "PHP"};
        for(String item1 : Programming){
            System.out.println(item1);
        }
        
        System.out.println("=================================");
        
        float[] Pecahan = {34.5f, 56.1f, 65.3f, 567.8f};
        for(float item2 : Pecahan){
            System.out.print(item2+" ");
        }
        System.out.println();
    }
}

Demo:

Contoh penggunaan for-each pada java

Coba kalian perhatikan, dengan menggunakan for-each, syntax yang kita tulis lebih ringkas dan simple, dibandingkan dengan syntax for sebelumnya. variable item1 dan item2 digunakan untuk menyimpan semua data pada Array, lalu kita panggil untuk mencetak semua data array tersebut.

Selain itu, kita juga dapat mencetak data pada sebuah Array 2 Dimensi atau Multi dimensi menggunakan for-each, untuk itu, kita perlu menmbahkan package java.util,Arrays, agar dapat mencetak data dari Array 2D,

package WILDAN_TECHNO_ART;

import java.util.Arrays;

public class latihan_java {
    public static void main(String[] args){
        String[][] Barang = {{"Laptop", "Komputer", "TV"},
                             {"Mobil", "Motor", "Sepeda"},
                             {"Telepon", "Remote", "Pensil"}
        };
        for(String[] item1 : Barang){
            System.out.println(Arrays.toString(item1));
        }
        
        System.out.println("==============================");
        
        double[][] Harga = {{344.45, 23.6, 767.3},
                            {64.1, 5.1, 34.0},
                            {12.3, 53.2, 90.9}
        };
        for(double[] item2 : Harga){
            System.out.print(Arrays.toString(item2)+" ");
        }
        System.out.println();
    }
}

Demo:

Contoh penggunaan for-each dengan Array 2 Dimensi Pada java

Untuk mencetak data Array 2D, kita perlu menambahkan simbo [ ] pada tipe data item didalam for serta Arrays.toString(), diigunakan untuk menmpilkan data pada Array 2D atau Multi Dimensi pada Layar.

Sekian materi dari saya, semoga bermanfaat, mohon maaf bila ada kesalahan.

Wassalamualaikum Warahmatullahi Wabarakatuh.

Belajar Menggunakan Operator Assignment pada Java

Belajar Menggunakan Operator Assignment pada Java


Assalamualaikum Warahmatullahi Wabarakatuh.

Pada meteri kali ini, saya akan mengajarkan pada kalian mengenai cara menggunakan Operator Assignment pada java. Operator Assignment adalah operator yang digunakan untuk memanipulasi dan menginisialisasi nilai pada sebuah variable, operator tersebut identik dengan simbol (=) dan dapat digabungkan sengan simbol Operator Aritmatika, contohnya seperti (+=), (-=), (%=), (*=), (/=).

Belajar Menggunakan Operator Assignment pada Java

Penggunaan operator assignment pada java digunakan untuk menghitung dua buah variable serta mengembalikan hasilnya secara langsung, contohnya seperti berikut ini, jika kita mempunyai 2 buah variable integer Y = 2 dan X = 5, untuk menjumlahkan kedua variable tersebut pada umumnya kita menggunakan penjumlahan seperti ini Y = Y+X. Tetapi dengan menggunakan operator assignment kita cukup menuliskannya seperti ini Y += X.

Materi Lainnya Yang Direkomendasikan:

Operator Assignment pada Java

Buka aplikasi NetBeans IDE kalian, buatlah project baru dan sebuah class, berinama class tersebut, misalnya "demo_assignment".

Contoh sederhana dari penggunaan Operator Assignment seperti berikut ini:

package WILDAN_TECHNO_ART;

public class demo_assignment {
    public static void main(String[] args){
        //Deklarasi Varibale Bilangan Bulat Integer
        int W = 33;
        int A = 10;
        
        System.out.println(W += A); // Sama Dengan W = W + A
        System.out.println(W -= A); // Sama Dengan W = W - A
        System.out.println(W /= A); // Sama Dengan W = W / A
        System.out.println(W *= A); // Sama Dengan W = W * A
        System.out.println(W %= A); // Sama Dengan W = W % A
        
        //Deklarasi Varibale Floating-Point (Pecahan)
        double X = 563.7;
        double Y = 23.67;
        
        System.out.println(X += Y); // Sama Dengan X = X + Y
        System.out.println(X -= Y); // Sama Dengan X = X - Y
        System.out.println(X /= Y); // Sama Dengan X = X / Y
        System.out.println(X *= Y); // Sama Dengan X = X * Y
        System.out.println(X %= Y); // Sama Dengan X = X % Y
    }
}

Demo:

Contoh penggunaan Operator Assignment pada Java

Coba kalian perhatikan source code tersebut, jika sudah paham mengenai fungsinya. Selanjutnya pada contoh program yang kedua ini, kita akan mencoba menggunakan Operator Assignment serta penggunaan array dan for loops pada java:


package WILDAN_TECHNO_ART;

public class demo_assignment {
    public static void main(String[] args){
        int hasil = 0;
        int[] data = {4,5,8,9,4,2};
        
        for(int w=0; w<data.length; w++){
            hasil += data[w];
            System.out.print(hasil+" ");
        }
        
        System.out.println();
        
        for(int w=0; w<data.length; w++){
            hasil *= data[w];
            System.out.print(hasil+" ");
        }
        System.out.println();
    }
}

Demo:

Contoh Operator Assignment dengan Array dan For Loops

Pada program tersebut, disana kita membuat 2 buah variable, varibale pertama diguanak untuk menampung jumlah nilai pada variable keuda, variable kedua merupakan sebuah array dengan beberapa nilai yang sudah kita tambahkan.

Didalam statement for loops, kita menjumlahkan semua nilai didalam data array dan menyimpannya pada variable hasil, lalu mencetak hasilnya satu per satu, program tersebut akan melooping sesuai dengan jumlah Data Array yang kita Set.

Sampai disini saja, materi yang saya bahas mengenai Pengunaan Operator Assignment pada Java, jika ada yang ingin di tanyakan, silakan isi komentar dibawah dan mohon maaf bila ada kesalahan.

Wassalamualaikum Warahmatullahi Wabarakatuh.

Konsep Dasar Enumeration pada Java

Konsep Dasar Enumeration pada Java


AssalamualaikumWarahmatullahi Wabarakatuh.

Enum (Enumeration ) merupakan sekumpulan variable yang didefinisikan menjadi tipe data konstanta, Setiap objek yang bertipe Enum, dapat mengakses kumpulan nilai yang terdapat pada Enumeration. Konsep ini mirip dengan Array, tetapi Enum berbentuk konstanta atau tetap serta bertipe class, Enumeration  merupakan salah satu fitur yang terdapat pada Library J2SE versi 5 pada java.

Mempelajari Konsep Dasar Enumeration pada Java

Kita dapat mendefinisikan variable bertipe Enum dengan menggunakan kata kunci enum, kumpulan variable tersebut kita definisikan didalam block {} (kurung kurwal). Objek pada enum dapat mengakses atribut atau method (Enum) ,lalu mengaplikasikan nilai serta value yang ada didalamnya.

Materi Lainnya Yang Direkomendasikan:

Pada tutorial ini kita akan belajar memahami konsep Enumeration pada java, mungkin penggunaan konsep ini jarang ditemukan pada program atau artikel-artikel yang membahas tentang pemrograman java, berikut mari kita simak lebih lanjut.

Konsep Dasar Enumeration pada Java

Pada contoh program berikut ini, kita akan memperaktekan cara penggunaan konsep enum pada java, didalam program yang akan dibuat, kita membutuhkan beberapa fungsi pendukung seperti konstruktor, method void, Instance/Objek dan Statement switch-case. Saya harap kalian sudah mempelajarinya sebelumnya.

Buka NetBeans IDE kalian, lalu buatlah project baru dan sebuah class baru, misalnya class tersebut akan kita berinama "demo_enum". Coba kalian perhatikan Source Code berikut ini:

package WILDAN_TECHNO_ART;

public class demo_enum {
    
    //Membuat Class Enum serta Beberapa Variable Didalamnya
    public enum Zodiak{
        CAPRICON, AQUARIUS, LEO, SAGITARIUS, ARIES, TAURUS, VIRGO, LIBRA;
    }
    
    //Membuat Objek dari Enum
    private Zodiak zodiak;
    
    //Sebuah Konstruktor dengan Parameter Enum
    public demo_enum(Zodiak zodiak){
        this.zodiak = zodiak;
    }
    
    //Mendefinisikan Nilai pada Masing-Masing Variable Enum
    void DaftarZodiak(){
        //Method Switch Digunakan Untuk Menentukan Opsi Mana Yang Akan Dipilih
        switch(zodiak){
            case AQUARIUS:
                System.out.println("AQUARIUS: 21 Januari - 19 Februari");
                break;
            case ARIES:
                System.out.println("ARIES: 21 Maret-19 April");
                break;
            case CAPRICON:
                System.out.println("CAPRICON: 22 Desember - 20 Januari");
                break;
            case LIBRA:
                System.out.println("LIBRA: 23 September-23 Oktober");
                break;
            case LEO:
                System.out.println("LEO: 23 Juli-23 Agustus");
                break;
            case SAGITARIUS:
                System.out.println("SAGITARIUS: 23 November-21 Desember");
                break;
            case TAURUS:
                System.out.println("TAURUS: 21 April-20 Mei");
                break;
            case VIRGO:
                System.out.println("VIRGO: 24 Agustus-22 September");
                break;
        }
    }
    
    public static void main(String[] args){
        //Membuat Instance/Objek Serta Menentukan Variable/Opsi Mana Yang Akan Dipilih
        demo_enum data1 = new demo_enum(Zodiak.ARIES);
        data1.DaftarZodiak();
        
        demo_enum data2 = new demo_enum(Zodiak.AQUARIUS);
        data2.DaftarZodiak();
        
        demo_enum data3 = new demo_enum(Zodiak.LEO);
        data3.DaftarZodiak();
        
        demo_enum data4 = new demo_enum(Zodiak.TAURUS);
        data4.DaftarZodiak();
        
        demo_enum data5 = new demo_enum(Zodiak.VIRGO);
        data5.DaftarZodiak();
    }
}

Demo:

Contoh Penggunaan Enum pada Java

Penjelasan:

Pertama-tama ,kita membuat sebuah instansi variable serta constructorn dari class tersebut. Didalam class Enum, kita mendeklarasikan beberapa variable dengan nama-nama Zodiak.

Method DaftarZodiak() digunakan untuk mendefinisikan nilai, pada masing-masing variable enum, dengan menggunakan statement switch, kita dapat menetukan opsi mana yang akan dipilih untuk kita tampilkan atau jalankan pada method main.

Setelah itu kita panggil ,dengan membuat objek baru dari class demo_enum dengan parameternya berupa opsi atau variable enum yang akan kita pilih dan jalankan.

Terakhir kita panggil method DaftarZodiak() dari objek baru tersebut.

Selanjutnya pada contoh program yang kedua ini, kita akan membuat class enum lalu didalamnya terdapat beberapa variable dengan nilai yang sudah didefinisikan secara langsung, berbeda dengan contoh sebelumnya.

package WILDAN_TECHNO_ART;

public class demo_enum {
    
    //Class Enum dengan Variable yang Nilainya sudah Didefinisikan
    public enum HEWAN{
        KUCING("Miaw Meow"),
        ANJING("Guk Guk"),
        SAPI("Moooo"),
        DOMBA("Mbeee");
        
        //Variable String untuk Menyimkan Data dari Variable Enum
        private String hewan;
        
        //Sebuah Konstrukor dari Enum dengan Parameter String
        HEWAN(String hewan){
            this.hewan = hewan;
        }
        
        //Method Getter unutk Mengembalikan Nilai hewan
        String getHewan(){
            return hewan;
        }
    }
    
    public static void main(String[] args){
        //Objek Array Untuk Menghitung Jumlah Valeu pada HEWAN
        HEWAN[] HewanArray = HEWAN.values();
        //Melooping serta Mencetak semua Nilai Pada Enum
        for(HEWAN H : HewanArray){
            System.out.println(H.getHewan());
        }
    }
}

Demo:

Contoh Kedua Penggunaan Enum pada Java

Penjelasan:

Pada Source Code tersebut kita dapat mendefinisikan nilai secara langsung pada variable di dalam class enum, dengan cara membuat variable instansi, lalu membuat constructor dan membuat method Getter, untuk mengembalikan nilai pada tipe data String dari variable enum.

HEWAN.values() digunakan untuk menampilkan semua nilai yang ada di dalam class enum, selanjutnya kita definisikan pada objek array, agar dapat kita tampilkan keseluruhan nilainya ,dengan metode looping for each.

Sekian dari saya, semoga brmanfaat, bila ada kesalahan serta kata-kata yang kurang jelas pada meteri ini, saya mohon maaf.

Wabillahi Taufik Wal Hidayah Wassalamualaikum Warahmatullahi Wabarakatuh.

Belajar Memahami Konsep Shadowing pada Java

Belajar Memahami Konsep Shadowing pada Java


Assalamualaikum Warahmatullahi Wabarakatuh.

Pada kesampatan kali ini saya akan berbagi tutorial mengenai konsep Shadowing pada Java, mungkin banyak diantara kalian yang belum tahu atau belum pernah menggunakan konsep Shadowing pada program yang kalian buat .Dengan menggunakan konsep ini digunakan kita dapat membuat sebuah variable atau parameter dengan nama yang sama pada OuterClass (Kelas Luar) dengan Inner Classnya (Kelas Dalam), tetapi mempunyai nilai atau fungsi yang berbeda.

Belajar Memahami Konsep Shadowing pada Java

Karena mempunyai nama variable yang sama, pada konsep Shadowing, kita dapat menggunakan kata kunci this untuk menyatakan ini objek siapa, penggunaannya hampir sama dengan kata kunci super, yaitu untuk mengakses variable atau method pada SuperClassnya jika didalam SubClass terdapat nama variable atau method yang sama, yang membedakan hanyalah, jika Shadowing mengacu pada OuterClass dan InnerClass dan super pada SuperClass dan SubClassnya.

Materi Lainnya Yang Direkomendasikan:

Konsep Shadowing pada Java

Pada contoh program berikut ini, kita akan membuat 2 buah class, dimana pada class pertama didalamnya akan kita tambahkan Inner Class serta contoh penggunaan Shadowing. Dan pada class yang kedua akan kita gunakan sebagai class utama untuk menjalankan program.

Pada class yang pertama, misalnya kita akan memberinya nama "KelasLuar", lalu didalamnya masukan source code berikut ini:

package WILDAN_TECHNO_ART;

class KelasLuar {
    
    //Variable pada OuterClass (Kelas Luar)
    String All_in_One = "Text Disini Milik KelasLuar";
    
    static class KelasDalam{
        
        //Variable pada Inner Class (Kelas Dalam)
        String All_in_One = "Text Hanya Untuk KelasDalam";
        
        void demo1(String All_in_One){
            //Mencetak dan Mengakses Variable Yang Terdapat pada Parameter
            System.out.println(All_in_One);
            
            //Mencetak dan Mengakses Variable yang Terdapat pada KelasDalam
            System.out.println(this.All_in_One);
            
            //Mengakses Variable yang Terdpat pada KelasLuar
            System.out.println(KelasDalam.this.All_in_One);
        }
    }
}

Coba kalian perhatikan, dengan menggunakan keyword this, kita dapat menentukan variable atau method mana yang akan di jalankan jika nama variable atau parameter tersebut ada yang sama antara OuterClass dan InnerClassnya.

Pada class utama, kita harus membuat instance dari KelasLuar terlebih dahulu, setelah itu membuat Instance/Objek dari ClassDalam.

package WILDAN_TECHNO_ART;

public class latihan_java {
    public static void main(String[] args){
        //Membuat Instance dari KelasLuar
        KelasLuar Outer = new KelasLuar();
        //Membuat Instance dari KelasDalam
        KelasLuar.KelasDalam data = Outer.new KelasDalam();
        //Memanggil Method demo1 untuk Mencetak Output
        data.demo1("Input Text Pada Parameter");
    }
}

Demo:

Contoh Penggunaan Konsep Shadowing pada Java

Sekian tutorial singkat mengenai konsep Shadowing, somoga materi yang saya berikan ini bisa bermanfaat untuk kalian semua. Jangan lupa untuk bereksperimen sendiri dan memahami lebih detail lagi mengenai Shadowing pada java.

Wassalamualaikum Warahmatullahi Wabarakatuh.