staticสมาชิก ( staticฟิลด์หรือstaticวิธีการ) ใน Java เชื่อมโยงกับคลาสตามลำดับแทนที่จะเป็นอ็อบเจ็กต์ของคลาสนี้ รหัสต่อไปนี้พยายามเข้าถึงฟิลด์แบบคงที่ในการnullอ้างอิง
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);
}
}
แม้ว่าmain.getNull()ผลตอบแทนจะทำงานและการแสดงnull value = 10รหัสนี้ทำงานอย่างไร?
Main main = null; main.getNull().valueเพื่อความสนุกสนานให้ลอง
new Thread[]{}[-1].sleep(10);ตำแหน่งที่ sleep () เป็นวิธีการคงที่ สิ่งนี้เคยประสบความสำเร็จใน Java เวอร์ชันเก่าบางรุ่น