嗨,我有一个抽象类,其中有一些公共方法和一些抽象方法。我有公众,以便他们实现派生类的通用方法。
让我感到困惑的是为什么我要定义一个公共抽象方法而不是受保护的抽象。对我来说,在抽象类中定义一个公共抽象方法是没有意义的……。因为如果是抽象类,则在派生类中将其覆盖,但是如果将if定义为public,则同样如此,但以某种方式定义它更有意义据我们所知,它将受到保护,因此我们将在派生类中覆盖它。
在抽象类中将方法定义为公共抽象是错误的吗?哪个更好?为什么?
出于同样的原因,您想要在对象中使用公共方法:)您只是不知道此阶段的特定实现。它在具有很高抽象水平的类中很常见,例如中间件。
编辑:这是100%合法的。您只需要确保要在每个具体实现中向世界展示它的功能即可。入口点方法(例如:启动,执行,解析..)通常是这种类型的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句