我已经定义了超级类,其成员变量是私有的,而函数是公共的。我想要那个超级班级'可以在子类中访问的方法,但不能从该类的外部访问。
换句话说,超级班级'方法在子类中变为私有,因此无法从类外部访问它们。这种行为是否可行?
答案 0 :(得分:1)
我认为您正在搜索protected
修饰符。可以从同一个包中的类和扩展类访问protected
个方法。
另一种方法是使用模板方法模式进行控制反转:基类使用子类必须覆盖的抽象方法在非抽象方法中定义行为 - 这样子类只需要扩展特定的部分和不必关心其余的事情。
答案 1 :(得分:0)
从技术上讲,java doen没有针对此用例的修饰符,但受保护使您更接近但允许在包内访问。