![]() |
1
7
简而言之,您不能从派生它的类中隐藏派生方法。但是,您可以重构代码以实现您想要实现的目标:
|
![]() |
2
7
编辑:
救生艇必须能看见它。它应该如何能够覆盖
|
![]() |
3
4
你所描述的确切情况是不可能的。您可以限制对
使用[EditorBrowsable]属性是一种IDE技巧,它会对IntelliSense隐藏该方法(除非其他程序员在VS中启用了正确的选项)。这将有效地防止大多数人调用它(如果他们看不到,它就不存在)。 您可以使用反射来询问您的调用方是谁,但我认为这样做的性能成本与好处相比太高。 |
![]() |
4
3
最简单的答案是保护该方法。这允许继承者调用它,但不会使其公开可用。但是,没有什么可以阻止继承类将方法更改为public。
|
![]() |
5
2
这是正确的方法。但在另一种情况下,您可能希望使用 editorbrowsableattribute 这将对intellisense隐藏该方法。您仍然可以调用它,但它会减慢开发人员调用可能破坏程序的东西的速度,并且通常会迫使他们阅读您的巨大评论警告。 |
![]() |
6
1
将其设置为受保护而不是公共,至少可以防止外部对象调用它。 |
![]() |
7
1
我在这里看到了代码的味道,因为验证不是船的功能职责的一部分。换句话说,我认为你可能在试图用继承来解决一个问题,而这可能不是最好的解决方案。尝试重构验证逻辑,以便将验证注入到类中。这对于域对象来说更有意义
|
![]() |
8
0
您可以将该方法标记为
|
![]() |
9
-1
也许你可以试试私人修饰符 |
![]() |
Brendan · Java中从父类继承的对象的ArrayList 2 年前 |
![]() |
Tali · 继承-您应该使用基类,还是它们只是子类的框架? 2 年前 |
![]() |
mask2 · 如何轻松访问继承类的功能? 2 年前 |
![]() |
Dimon · 父类中的Setter,以及一些没有参数的子类 2 年前 |
![]() |
Miguerurso · Javascript类继承无法正常工作 2 年前 |
![]() |
GuessMe · 返回新类对象的正确方法(也可以扩展) 2 年前 |
![]() |
Daniel Lizik · 重写父类构造函数的子类成员初始值设定项 2 年前 |
![]() |
i_know_what · 以基类作为参数重写错误的方法 2 年前 |