gpt4 book ai didi

java - 无法访问同一包中的类成员

转载 作者:行者123 更新时间:2023-11-30 02:59:18 24 4
gpt4 key购买 nike

假设我有一个带有包可访问成员的基类:

package testcase;

public class B
{
int b;
}

它有一个子类:

package testcase.sub;

import testcase.B;


public class C
extends B
{
int c;
}

现在我需要从定义该字段的同一包中访问成员字段:

package testcase;

import testcase.sub.C;


public class A
{

void testcase( C c )
{
c.c = 0; // HINT
( (B) c ).b = 1; // FIRST
c.b = 2; // SECOND
}

}

编辑:我完全理解A无法访问c.c以及为什么标记为 HINT 的行无法编译:C.c仅对同一包中的代码可见,而 C.c在包装中testcase.sub A位于testcase .

但是AB.b均在包装中 testcase那么为什么第一个作业可以编译,而第二个作业却不能编译呢?

最佳答案

C 无权访问 B.bB.b 是包级别权限,B 位于testcase 包,但 C 位于 testcase.sub 包中。它们不是同一个包,因此 C 没有 b 字段。

关于java - 无法访问同一包中的类成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36360442/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com