overriding相关内容

覆盖 Java 中的抽象泛型方法

问题大纲 我正在对当前项目基础的更好部分进行泛化,并且我有一个想法,我决定测试关于覆盖抽象方法的内容.这是我在 Java 中的测试类: 公共抽象类 Base {public abstract 测试();} 第一次实现: public class Inheritor extends Base {@覆盖公共继承者测试(){返回空;}} 第二次实施: pu ..
发布时间:2021-11-26 16:37:41 Java开发

用抽象方法覆盖默认接口方法

我觉得它很奇怪,想知道它是否是经常使用的东西.什么时候有用? 公共接口InterA {对象 getInfo() 抛出 Exception1;}公共接口 InterB {公共默认整数 getInfo(Object s) {return 67;}}公共接口 InterC 扩展了 InterA、InterB {@Override public abstract Integer getInfo(Obje ..
发布时间:2021-11-26 16:31:17 Java开发

从抽象基类的重写属性抛出的堆栈溢出异常

我有一个带有以下(为简洁起见进行了修剪)声明的基类: 公共抽象类 MyBaseClass{公共 int RecordId { 获取;私人订制;}公共字符串对象名称 { 获取;放;}公共抽象字符串状态 { 获取;放;}公共 GetMyObject(int id){MyObject myObject = context.GetObjectById(id);this.RecordId = myObje ..
发布时间:2021-11-26 16:25:45 C#/.NET

解决需要覆盖 Java 中的抽象方法的问题吗?

我一直在做一个作业,它涉及一个代表通用动物的抽象类,还有猫、狗、爬行动物等的子类.超类具有抽象方法每个子类实际上都没有使用这些方法. 例如,有狗和猫使用的品种和性别的访问器和变异器,而不是爬行动物类.我个人认为这是一个奇怪的设置,但这是作业所要求的. 一开始我尝试忽略特定子类中未使用的抽象方法,但我很快发现这会导致错误,因为抽象方法没有被覆盖.我所要做的就是将其放入适当的方法中进行修复... ..
发布时间:2021-11-26 16:24:45 Java开发

抽象方法覆盖抽象方法

公共抽象类A{公共抽象无效过程();}公共抽象类 B : A{公共抽象覆盖 void Process();}公开课 C : B{公共覆盖无效进程(){Console.WriteLine("abc");}} 此代码引发编译错误:'B' 未实现继承的抽象成员 'A.Process()'. 有没有办法做到这一点? 解决方案 只需在类 B 中完全省略该方法. B 无论如何从 A 继承它,并 ..
发布时间:2021-11-26 16:23:38 C#/.NET

抽象方法的目的是什么?

抽象公共类车{抽象无效驱动器();} 与上面的代码片段一样,Java 中抽象方法的目的究竟是什么?据我所知,根据定义,他们不允许有尸体. 解决方案 当你让事物实现同一个抽象类时,你是说,这些事物在高层次上是相似的,但它们在具体的做法上有所不同事物.抽象方法就是你怎么说,“这是扩展这个类的所有事情都必须做的事情,但他们每个人都可以指定他们将如何做." ..
发布时间:2021-11-26 16:21:23 Java开发

在 Java 中实现抽象方法时是否应该添加 @Override 注释?

在 Java 中重写非虚方法时,推荐使用 @Override 批注,但如果我实现抽象方法怎么办?那么我也应该使用 @Override 吗? 解决方案 在这种情况下,我倾向于使用 @Override,以便在超类更改时在子类中标记该方法(完全删除该方法,或更改其签名等). 唯一真正的区别是,如果没有注解,如果超类/接口中的方法被更改或删除,有问题的实现只是成为该类的“正常"方法.因此,如 ..
发布时间:2021-11-26 16:19:16 Java开发

使用更指定的返回类型(协方差)覆盖抽象属性

class Base {}抽象类A{抽象公共列表项目{得到;放;}}派生类:基{}B级:A{私人列表项目;公共覆盖列表项目{得到{退换货品;}放{项目 = 价值;}}} 编译器说 B.Items 必须是 Base 元素列表“以匹配覆盖的成员"A.Items.我怎样才能做到这一点? 解决方案 您最初尝试完成的事情是不可能的 - .NET 不支持方法重载的 co( ..
发布时间:2021-11-26 16:17:56 C#/.NET

处理同音继承方法的规则是什么?

我试图了解 Java 如何处理当具体类从不同类/接口继承(抽象或具体)具有相同名称的方法时出现的歧义情况. 我一直无法找到一般规则,这就是为什么我决定花一些时间通过使用实际方法来解决这个问题. 我考虑了 8 种不同的情况,结合起来 抽象方法 非抽象方法 抽象类 界面 导致这个方案: +-------------------------+|界面 |+-------- ..
发布时间:2021-11-26 16:17:37 Java开发

Java克隆抽象对象

我想知道是否有任何方法可以执行以下操作.我有一个抽象类 Shape 及其所有不同的子类,我想覆盖 clone 方法.我想要在该方法中做的就是从当前的 toString() 创建一个新的 Shape.显然我不能做以下事情,因为 Shape 是抽象的.有没有另一种方法可以做到这一点,因为在每个子类中覆盖克隆只是为了简单的名称更改似乎没有用. 公共抽象类Shape {公共形状(字符串 str){//从 ..
发布时间:2021-11-26 16:16:31 Java开发

Java抽象类字段覆盖

我有一个抽象类应该实现一个公共字段,这个字段是一个接口或另一个抽象类. 像这样: 公共抽象类GenericContainer {公共 GenericChild 孩子;}公共抽象类 GenericChild {公共 int prop1=1;}公共抽象类 SpecialChild 扩展 GenericChild {公共 int prop1=2;} 现在我有另一个专门的类容器: public ..
发布时间:2021-11-26 16:14:16 Java开发

C# 中“抽象覆盖"的用途是什么?

出于好奇,我尝试覆盖基类中的抽象方法,并对实现抽象进行方法.如下: 公共抽象类 FirstAbstract{公共抽象无效 SomeMethod();}公共抽象类 SecondAbstract : FirstAbstract{公共抽象覆盖 void SomeMethod();//??这有什么意义?无论如何都没有实现会强制派生类实现抽象方法?} 想知道为什么 C# 编译器允许编写“抽象覆盖".不是 ..
发布时间:2021-11-26 16:10:14 C#/.NET

我可以覆盖和重载 Java 中的静态方法吗?

我想知道: 为什么不能在 Java 中覆盖静态方法? 静态方法可以在 Java 中重载吗? 解决方案 静态方法不能被完全覆盖,但可以隐藏父静态方法 实际上,这意味着编译器将在编译时决定执行哪个方法,而不是在运行时决定执行哪个方法,就像重写的实例方法一样. 一个简洁的例子看看这里. 和这个是解释覆盖实例方法和隐藏类(静态)方法. 覆盖:Java 中的覆盖仅意味 ..
发布时间:2021-11-25 21:03:16 Java开发

如何使用 Java 反射调用超类方法

我有两个班级: 公共类 A {公共对象方法(){...}}公共类 B 扩展 A {@覆盖公共对象方法(){...}} 我有一个 B 的实例.如何从 b 调用 A.method()?基本上和从 B 调用 super.method() 的效果一样. B b = new B();类superclass = b.getClass().getSuperclass();Method method = s ..
发布时间:2021-11-25 20:46:26 Java开发

覆盖与隐藏 Java - 困惑

我对覆盖与隐藏在 Java 中的区别感到困惑.任何人都可以提供有关这些差异的更多详细信息吗?我阅读了 Java 教程,但示例代码仍然让我感到困惑. 为了更清楚,我理解覆盖很好.我的问题是我看不出隐藏有什么不同,除了一个是在实例级别而另一个在类级别. 看Java教程代码: 公共类动物{公共静态无效 testClassMethod() {System.out.println("Class ..
发布时间:2021-11-25 18:34:24 Java开发