在 Java 中,protected
是一个访问修饰符,用于修饰类成员(成员变量、成员方法和构造方法)。当一个类成员被声明为 protected
时,它可以在同一包中的其他类以及子类中被访问。
以下是 protected
关键字的解析:
-
同一包中的访问:如果一个类成员被声明为
protected
,并且在同一包中的其他类中访问该成员,那么可以直接使用该成员,无需任何特殊的访问权限。 -
子类中的访问:如果一个类成员被声明为
protected
,并且在子类中访问该成员,那么子类可以直接使用该成员,无需任何特殊的访问权限。 -
外部包中的访问:如果一个类成员被声明为
protected
,并且在外部包中的其他类中访问该成员,那么是无法直接访问该成员的。只有通过子类继承的方式,在子类中才能访问到protected
成员。 -
下面是一个示例代码,展示了
protected
关键字的使用:在上述示例中,
Parent
类中有一个protected
修饰的变量protectedVariable
和一个protected
修饰的方法protectedMethod
。Child
类是Parent
类的子类,它位于同一包中,可以直接访问protected
变量和方法。而
AnotherClass
类位于另一个包中,它无法直接访问protected
变量和方法。但是,通过创建Child
类的对象,并通过子类的方法来间接地访问protected
成员。总之,
protected
关键字允许在同一包中的子类以及子类的子类中访问类成员,提供了一定程度的封装和继承性。