Jawapan: Pengubah suai akses yang dilindungi membenarkan subkelas dan kelas dalam pakej yang sama untuk mengakses ahli, sambil menyekat akses kepada kelas dalam pakej lain. Penerangan Terperinci: Ahli yang dilindungi boleh diakses dalam kelas yang menentukan, subkelas dan kelas lain dalam pakej yang sama. Kelas dalam pakej yang berbeza tidak boleh mengakses ahli yang dilindungi. Berkenaan dengan: a) Benarkan subkelas mengakses ahli kelas induk. b) Akses di dalam pakej dibenarkan, tetapi akses di luar pakej disekat. Contohnya, kaedah yang dilindungi getSpeed() bagi Kenderaan kelas induk boleh diakses oleh kereta subkelas, tetapi bukan oleh Lori kelas yang tidak berada dalam pakej yang sama.
Pengubah suai akses untuk fungsi Java: dilindungi
Pengenalan
Di Java, protected
ialah pengubah suai akses yang digunakan untuk kaedah, medan dan membina tahap akses yang terhad. Ia lebih ketat daripada awam
, tetapi mempunyai akses yang kurang mengehadkan daripada default
. protected
是一个访问权限修饰符,用于为方法、字段和构造函数指定受限访问级别。它比 public
更具限制性,但比 default
访问权限更宽松。
语义
protected
成员可以在定义它们的类中、子类中和同一包中的其他类中访问。protected
成员无法访问。应用
protected
访问权限修饰符常用于以下情况:
实战案例
考虑一个父类 Vehicle
,它有一个 protected
方法 getSpeed()
。
public abstract class Vehicle { protected int speed; public void getSpeed() { // ... } }
Car
类是 Vehicle
的子类,它可以访问 getSpeed()
方法,因为它继承自 Vehicle
。
public class Car extends Vehicle { public void displaySpeed() { // 可以访问父类的 protected 方法 getSpeed(); } }
然而,Truck
类与 Vehicle
不在同一个包中,因此它无法访问 getSpeed()
方法。
// Truck 类在一个不同的包中 public class Truck { // 无法访问 Vehicle 中的 protected 方法 // getSpeed(); }
结论
protected
dilindungi
ahli boleh diakses dalam kelas di mana mereka ditakrifkan, dalam subkelas dan dalam kelas lain dalam pakej yang sama. dilindungi
tidak boleh diakses. Kenderaan
, yang mempunyai kaedah dilindungi
getSpeed()
. 🎜rrreee🎜Kelas Kereta
ialah subkelas Kenderaan
dan ia mempunyai akses kepada kaedah getSpeed()
kerana ia mewarisi daripada Vehicle
code>. 🎜rrreee🎜Walau bagaimanapun, kelas Trak
tidak berada dalam pakej yang sama dengan Kenderaan
, jadi ia tidak boleh mengakses kaedah getSpeed()
. 🎜rrreee🎜🎜Kesimpulan🎜🎜🎜Atas ialah kandungan terperinci Aplikasi pengubah akses terlindung untuk fungsi Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!