Java อนุญาตให้กำหนดคลาสภายในคลาสอื่น มีสี่ประเภท: คลาสที่ซ้อนกันแบบคงที่, คลาสภายใน (ไม่คงที่), คลาสในเครื่อง และคลาสที่ไม่ระบุชื่อ แต่ละแห่งมีกฎการเข้าถึงและกรณีการใช้งานที่แตกต่างกัน
คลาสที่ซ้อนกันแบบคงที่
Java อนุญาตให้กำหนดคลาสภายในคลาสอื่น มีสี่ประเภท: คลาสที่ซ้อนกันแบบคงที่, คลาสภายใน (ไม่คงที่), คลาสในเครื่อง และคลาสที่ไม่ระบุชื่อ แต่ละแห่งมีกฎการเข้าถึงและกรณีการใช้งานที่แตกต่างกัน