static
anggota ( static
bidang atau static
metode) di Java dikaitkan dengan kelasnya masing-masing daripada objek kelas ini. Kode berikut mencoba mengakses bidang statis pada null
referensi.
public class Main
{
private static final int value = 10;
public Main getNull()
{
return null;
}
public static void main(String[] args)
{
Main main=new Main();
System.out.println("value = "+main.getNull().value);
}
}
Meskipun main.getNull()
kembali null
, itu berfungsi dan ditampilkan value = 10
. Bagaimana kode ini bekerja?
Main main = null; main.getNull().value
.
new Thread[]{}[-1].sleep(10);
mana sleep () adalah metode statis. Ini dulu berhasil pada beberapa versi Java yang lebih lama.