假设我有一个这样的课程:
public class ClassA
{
[...]
protected void methodIWantToTest()
{
[...]
}
[...]
}
当我在IntelliJ Idea 13中编写单元测试时,编写类似以下内容时不会出现编译器错误:
public class ClassATest
{
@Test
public void test()
{
final ClassA objectUnderTest = new ClassA();
objectUnderTest.methodIWantToTest(); // Why can I access a protected method here?
}
}
methodIWantToTest
受保护。为什么我可以在测试中访问它?
因为这些类在相同的程序包中(即使在不同的文件夹中)。同一包中的类以及子类可以访问受保护的方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句