b.publicInt = 0; // 可以访问 b.testInt = 1; // 访问protected的属性-失败 b.getTestInt(); // 访问protected的方法-失败 } public void test3() { TestOtherPackageSubClass b = new TestOtherPackageSubClass(); b.publicInt = 0; // 可以访问 b.testInt = 3; // 直接访问属性-失败 b.get...
对于(1)而言,clone()方法来自于类MyObject2本身,因此其可见性为包p2及MyObject2的子类,虽然Test2是MyObject2的子类,但在Test2中不能访问基类MyObject2的protected方法clone(),因此编译不通过;对于(2)而言,由于在Test2中访问的是其本身实例的从基类MyObject2继承来的的clone(),因此编译通过。 实例3 package p3; ...
在写一个标准JavaBean时,get 和 set 方法里面都直接调用protected修饰的成员变量,说明可以直接调用。 2.同一个包中 如图: 从上图中,我们可以看到在同一个包中,可以直接使用protected修饰的变量,并且无论是使用子类创建的对象还是父类创建的对象都可以访问protected修饰的变量。 3.不同包的子类 在不同包的子类中的...
private:私有访问级别,只有当前类可以访问。 default(即没有修饰符):默认访问级别,当前类以及同一个包中的其他类可以访问。 protected:受保护访问级别,当前类、同一个包中的其他类以及不同包中的子类可以访问。 public:公共访问级别,所有类都可以访问。 二、private修饰符 当我们将类的成员变量或方法声明为private时...
只能在子类中直接访问protectedProp变量,或通过该子类的实例对象访问: protectedProp=...;...Sons=newSon();s.protectedProp=...; 以下方式则非法: → 在子类中,通过父类实例对象访问; → 在子类中,通过多态: Parentpa=newSon();pa.protectedProp=...; ...
在Java中,protected 是一个访问修饰符,用于限制类成员(包括字段、方法和构造函数)的访问权限。下面是对 protected 访问修饰符的详细解释: 基本含义: protected 修饰的成员可以被同一个包内的其他类以及所有子类(无论子类是否在同一个包内)访问。 在类内部的访问权限: 在类内部,protected 成员可以被该类的任何方法...
JAVA第6讲(6_7)在同一个包中访问另一类带有protected的成员变量及方法鑫地编程 立即播放 打开App,流畅又高清100+个相关视频 更多1346 -- 8:42 App JAVA-第二讲-第3节(1)-石头剪刀布小游戏 2326 2 7:57 App JAVA-第二讲-第3节(0)-石头剪刀布小游戏 1021 -- 9:21 App JAVA-第二讲-第3节-...
基类的 protected 成员是包内可见的,并且对其子类可见; 若子类 S 与基类 C 不在同一包中,那么在子类 S 中,只能访问 S 的实例及 S 的子类实例从基类 C 继承而来的 protected 成员。 以访问方法为例说明第二点: // 示例一 packagep1; publicclassFatherInP1{ ...
我们已经清楚Object.clone()是protected方法。这说明,该方法可以被同包(java.lang)下和它(java.lang.Object)的子类访问。这里是MyObject类(默认继承java.lang.Object)。 同样Test也是java.lang.Object的子类。但是,不能在一个子类中访问另一个子类的protected方法,尽管这两个子类继承自同一个父类。