gpt4 book ai didi

java - 无法降低从父级继承的方法的可见性

转载 作者:搜寻专家 更新时间:2023-10-30 21:36:22 25 4
gpt4 key购买 nike

<分区>

我遇到了这个编译器错误:

You cannot reduce the visibility of a inherited method.

我有以下代码

class Parent {      
public void func() {
System.out.println("in Parent");
}
}

public class TestClass extends Parent {
public static void main(String args[]) {
parent obj=new TestClass();
obj.addTest();
}

private void func() {
System.out.println("in child");
}
}

这里父类有 func() 方法,它是公共(public)的,被私有(private)的子类 TestClass 覆盖。现在编译器抛出我无法降低可见性的错误。从技术上讲,每当我创建一个 TestClass 的对象并分配给类型父对象时,由于 func() 方法被覆盖,TestClass 的 func() 将被调用总是,那为什么我们要注意能见度呢?这个错误背后的原因是什么?有人能给我解释清楚吗?

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