this → Artikel Baru – ( Atrikel Lama ↓ )

3 Perbedaan Utama Static Class dan Non Static Class pada Java

Java class dapat memiliki nilai static pada kode programnya. Pada Java, terdapat variabel instance static yang sama dengan method static dan juga static block. 

Pahami pula, tentang semua konsep desain Web untuk tingkat pemula melalui materi lengkap JAVA [klik].


Java memungkinkan untuk mendefinisikan class bersamaan dengan class lainnya. Seperti sebuah class yang dipanggil dalam sebuah nested classclass tertutup nested class juga dikenal dengan class outer. Pada Java, tidak dapat dibuat top level class static. Hanya nested class saja yang dapat dibuat static.

Perbedaan Antara Static dan Non Static Nested Class
Beberapa perbedaan umum antara class nested static dan class nested nonstatic adalah sebagai berikut:
  • satu, Nested static class tidak membutuhkan referensi dari outer class, tetapi non static nested class atau inner class membutuhkan referensi outer class.
  • dua, Inner class atau non static nested class dapat mengakses keduanya baik itu anggota static dan non static dari outer class. Sebuah class static tidak dapat mengakses anggota non static dari outer classNon static class hanya bisa mengakses anggota static dari outer class.
  • tiga, Instance dari inner class tidak bisa diciptakan tanpa instance dari outer class dan inner class bisa mendefinisikan referensi data dan method di dalam outer class dan juga nested-nya, jadi tidak perlu melewati referensi dari object ke constructor dari inner class. Untuk alasan ini inner class dapat membuat program yang sederhana dan ringkas.


Baca juga, tentang materi bahasa pemrograman lainnya melalui Materi Lengkap 

Bahasa Pemrograman [klik].


// Program Java

// mendemonstrasikan bagaimana

// cara implementasi static

// dan non static class pada

// program Java.

class OuterClass

private static String msg = "MakanNasiPadang"

 

/* Static nested class */

public static class NestedStaticClass

 

// Hanya anggota static dari

// outer class yang diakses

// secara langsung dalam

// nested.

 

/* Static class */

public void printMessage() { 

// Mencoba membuat 'message'

// sebuah non static variabel,

// akan terdapat compiler

// error. 

System.out.println("Pesan "

+"dari class nested static: " 

+msg);} 

 

// Class nested non static

// atau juga disebut sebagai

// inner class.

public class InnerClass

// Keduanya baik anggota

// static dan non static dari

// outer class dapat diakses

// dalam inner class pada

// bagian ini.

public void display()

{System.out.println("Pesan"

+" dari class nested"

+" non-static: "

+msg);}} 

}

 

class Main 

// Bagaimana cara menciptakan

// instance dari static dan

// non static nested class.

public static void main(String args[]){ 

  

// Menciptakan instance dari

// nested static class.

OuterClass.NestedStaticClass printer = new OuterClass.NestedStaticClass(); 

  

// Memanggil non static method

// dari nested static class.

printer.printMessage(); 

 

// Untuk menciptakan instance

// dari inner class dibutuhkan

// instance outer class.

 

// Ciptakan instance outer

// class untuk menciptakan non

// static nested class.

OuterClass outer = new OuterClass();   

OuterClass.InnerClass inner = outer.new InnerClass(); 

  

// Memanggil non static method

// dari inner class.

inner.display(); 

  

// Dapat juga dilakukan

// kombinasi pada tahap di

// atas dalam satu tahapan

// untuk menciptakan instance

// dari inner class.

OuterClass.InnerClass innerObject = new OuterClass().new InnerClass(); 

  

// Hal yang sama juga dapat

// dilakukan untuk memanggil

// inner class method.

innerObject.display();} 

}

Output:
Pesan dari class nested static: MakanNasiPadang
Pesan dari class nested non-static: MakanNasiPadang
Pesan dari class nested non-static: MakanNasiPadang

Komentar

  1. Apa yang dimaksud dengan static class pada Java?

    BalasHapus
    Balasan
    1. Static class pada Java adalah mirip dengan class yang sifatnya abstract dan terisolasi. Perbedaan antara static class dan non static class adalah static class tidak dapat dibuat instance-nya ataupun diturunkan pada class lain, dan semua anggota class tersebut adalah bersifat static.

      Hapus
  2. Apa keuntungan menggunakan class static pada Java?

    BalasHapus
    Balasan
    1. Kelebihan dari penggunaan static class pada Java adalah kompilator dapat memeriksa guna memastikan bahwa tidak ada anggota instance yang ditambahkan secara tidak sengaja pada class tersebut. Kompilator akan menjamin bahwa static class tersebut tidak dapat diciptakan kembali. Static class disegel dan tidak dapa diwariskan kepada class lainnya. Class tersebut juga tidak dapat mewarisi isi dari class lain manapun kecuali dari object.

      Hapus
  3. Kenapa dibutuhkan static class pada pemrograman Java?

    BalasHapus
    Balasan
    1. Pada Java, keywrod static utamanya digunakan untuk manajemen memori. Keyword tersebut dapat digunakan menggunakan variabel, method, block, dan nested class. Keyword tersebut juga adalah keyword yang digunakan untuk berbagi variabel atau method yang sama dari class tertentu. Pada dasarnya, static digunakan untuk variabel konstanta atau method yang sama untuk setiap instance class.

      Hapus

Posting Komentar

Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung. :D

Catatan: setiap iklan yang ditayangkan pada blog ini bersumber dari google adsense. Dengan jenis iklan yang dipilih adalah, sebagai berikut.

POIN 1, Iklan yang ditampilkan hanya boleh berbahasa indonesia atau berbahasa inggris. Tidak menerima jenis iklan dalam bahasa yang lain selain yang telah disebutkan karena blog ini dibuat untuk para pengunjung dari negara atau orang yang berbahasa Indonesia.

POIN 2, Setiap gambar yang ditampilkan pada iklan sifatnya tidak mengganggu para pengunjung yang melihat blog, atau tidak boleh menampilkan gambar yang bersifat menjijikkan atau merangsang rasa mual.

POIN 3, Jenis iklan yang dipasang bukan merupakan iklan spam, atau berisi dan mengarahkan pengunjung ke alamat yang berbahaya atau bersifat penipuan.

POIN 4, Segala bentuk iklan tunduk dan patuh pada ketentuan dari pihak Adsense google dan pemilik blog.

POIN 5, Segala jenis iklan yang tidak bertentangan dengan poin 1-4 yang dijelaskan sebelumnya, maka iklan tersebut dapat ditampilkan pada blog.



~ Ikatlah Ilmu dengan Memostingkannya ~

Hot Artikel

Enkapsulasi pada Java

Perbedaan stdio.h dan stdlib.h pada Bahasa C

Penjelasan Singkat tentang Konsep Asosiasi, Komposisi, dan Agregasi pada Java

2 Jenis Utama Kegiatan Penelitian Berdasarkan Waktunya, Crosssectional Salah Satunya