Java มีตัวดัดแปลงควบคุมการเข้าถึงสี่ตัว
เพื่อเปรียบเทียบความแตกต่างกับรหัสให้สร้างสองแพ็คเกจสองแพ็คเกจพื้นที่ 1 และพื้นที่ 2; ห้าชั้นเรียนคือ Person, Persondemo, Personson, Persontest และ Outperson
จากนั้นใส่บุคคล Persondemo บุคคลภายใต้พื้นที่ 1
Persontest และ Outperson อยู่ภายใต้แพ็คเกจ Area2
ตัวอย่างของตัวดัดแปลงควบคุมการเข้าถึงสี่ตัวในหมวดหมู่เดียวกัน:
แพ็คเกจพื้นที่ 1; บุคคลระดับสาธารณะ {สตริงสาธารณะ _public = "ตัวแปรสาธารณะ"; // กำหนดสตริงส่วนตัวของตัวแปรสาธารณะ _private = "ตัวแปรส่วนตัว"; // กำหนดสตริงที่ได้รับการป้องกันตัวแปรส่วนตัว _protected = "ตัวแปรที่ได้รับการป้องกัน"; // กำหนดสตริงตัวแปรที่ได้รับการป้องกัน _default = "ค่าเริ่มต้น"; // กำหนดโมฆะสาธารณะตัวแปร _pub () {// สร้างวิธีการสาธารณะ system.out.println (_public); } โมฆะส่วนตัว _pri () {// สร้างวิธีการส่วนตัว System.out.println (_private); } void protected _pro () {// สร้างวิธีการป้องกัน System.out.println (_protected); } void _def () {// สร้างวิธีการเริ่มต้น System.out.println (_default); } โมฆะคงที่สาธารณะหลัก (สตริง [] args) {บุคคล p = บุคคลใหม่ (); // สร้างวัตถุ p._pub (); // ปฏิทินวิธีการ p._pri (); p._pro (); p._def (); -ตัวอย่างของรหัสของตัวดัดแปลงควบคุมการเข้าถึงสี่ตัวภายใต้คลาสที่แตกต่างกัน (ไม่รวมคลาสย่อย) ในแพ็คเกจเดียวกัน:
แพ็คเกจพื้นที่ 1; Public Class Persondemo {โมฆะสาธารณะคงที่หลัก (String [] args) {person p = บุคคลใหม่ (); // สร้างวัตถุของคลาสบุคคล p._pub (); p._pri (); // รายงานข้อผิดพลาด p._pro (); p._def (); -ตัวอย่างของรหัสของตัวดัดแปลงควบคุมการเข้าถึงสี่ตัวภายใต้คลาสย่อย BUN เดียวกัน:
แพ็คเกจพื้นที่ 1; บุคคลระดับสาธารณะขยายบุคคล {// บุคคล subclass สืบทอดมรดกให้กับคนชั้นเรียนระดับบุคคลที่เป็นโมฆะสาธารณะหลัก (สตริง [] args) {personson son = บุคคลใหม่ (); // subclass สร้าง Object son._pub (); son._pro (); son._def (); son._pri (); // รายงานข้อผิดพลาดพ่อ = บุคคลใหม่ (); // เตรียมชั้นเรียนสร้างวัตถุพ่อ. _def (); พ่อ. _pub (); พ่อ. _def (); พ่อ. _pri (); // รายงานข้อผิดพลาด}}ตัวอย่างของรหัสของตัวดัดแปลงควบคุมการเข้าถึงสี่ตัวภายใต้คลาสที่แตกต่างกัน (ไม่รวมคลาสย่อย) ในแพ็คเกจเดียวกัน:
แพ็คเกจพื้นที่ 2; นำเข้าพื้นที่ 1.Person; // อ้างอิงบุคคลระดับบุคคลระดับบุคคล persontest {โมฆะสาธารณะคงที่หลัก (สตริง [] args) {บุคคล p = บุคคลใหม่ (); // คลาสบุคคลสร้างวัตถุ p._pub (); p._pro (); // รายงานข้อผิดพลาด p._pri (); // รายงานข้อผิดพลาด p._def (); // รายงานข้อผิดพลาด}}ตัวอย่างของรหัสของตัวดัดแปลงควบคุมการเข้าถึงสี่ตัวภายใต้คลาสย่อย BUN เดียวกัน:
แพ็คเกจพื้นที่ 2; นำเข้าพื้นที่ 1.Person; // อ้างอิงคลาสบุคคลที่อยู่ภายใต้พื้นที่พื้นที่ 1 แพ็คเกจสาธารณะ Outperson ขยายบุคคล {// subclass สืบทอดโมฆะระดับสาธารณะระดับแม่ (สตริง [] args) {outperson out = new Outperson (); // subclass สร้างวัตถุ out._pub (); out._pro (); out._pri (); // รายงานข้อผิดพลาดออกไป _def (); // รายงานข้อผิดพลาด}}หมายเหตุ: เปรียบเทียบกับแผนภูมิอย่างระมัดระวัง!