overriding相关内容

Java中的动态多态和静态多态有什么区别?

谁能提供一个简单的例子来解释Java中动态和静态多态的区别? 解决方案 多态 1.静态绑定/编译时绑定/早期绑定/方法重载.(在同一类中) 2.动态绑定/运行时绑定/后期绑定/方法覆盖.(在不同的类中) 重载示例: 类计算{void sum(int a,int b){System.out.println(a+b);}void sum(int a,int b,int c) ..
发布时间:2021-11-25 16:25:58 Java开发

方法重载和覆盖有什么区别?

重载方法和覆盖方法有什么区别?谁能用例子解释一下? 解决方案 方法重载 处理在同一个类中具有两个或多个名称相同但参数不同的方法的概念.> void foo(int a)void foo(int a, float b) Method overriding 意味着具有两个具有相同参数但实现不同的方法.其中一个存在于父类中,而另一个存在于派生类或子类中.@Override 注释虽然不是必需的 ..
发布时间:2021-11-25 14:25:40 Java开发

将项目导入 Eclipse 后出现“必须覆盖超类方法"错误

任何时候我必须将我的项目重新导入到 Eclipse 中(如果我重新安装 Eclipse,或者更改了项目的位置),几乎所有我覆盖的方法都没有正确格式化,从而导致错误: 该方法必须覆盖超类方法 值得一提的是,无论出于何种原因,这都是 Android 项目,方法参数值并不总是填充,所以我必须自己手动填充它们.例如: list.setOnCreateContextMenuListener(n ..
发布时间:2021-11-25 14:18:24 Java开发

重写的方法可以在返回类型上有所不同吗?

被覆盖的方法可以有不同的返回类型吗? 解决方案 Java 支持覆盖方法的* 协变返回类型.这意味着被覆盖的方法可能具有 更多 特定的返回类型.也就是说,只要新的返回类型可以分配给您要覆盖的方法的返回类型,就可以使用. 例如: class ShapeBuilder {...公共形状构建(){....}类 CircleBuilder 扩展了 ShapeBuilder{...@覆盖公共圈 ..
发布时间:2021-11-25 13:51:44 Java开发

用相同的方法在一个类中实现两个接口.哪个接口方法被覆盖?

具有相同方法名称和签名的两个接口.但是由单个类实现,那么编译器如何识别哪个方法对应哪个接口? 例如: 接口A{int f();}接口B{int f();}类 Test 实现 A, B{public static void main(String... args) 抛出异常{}@覆盖public int f() {//来自接口 A 或 B返回0;}} 解决方案 如果一个类型实现了两个接口 ..
发布时间:2021-11-25 13:18:11 Java开发

有没有办法覆盖 Java 中的类变量?

班爸爸{受保护的静态字符串我=“爸爸";公共无效printMe(){System.out.println(me);}}班级儿子延伸爸爸{受保护的静态字符串我=“儿子";}公共无效 doIt(){新儿子().printMe();} 函数 doIt 将打印“爸爸".有没有办法让它打印“儿子"? 解决方案 是的.但是就变量而言,它被覆盖(为变量赋予新值.为函数赋予新定义是覆盖).只是不要声明变 ..
发布时间:2021-11-25 13:07:23 Java开发

覆盖后退按钮以充当主页按钮

按下后退按钮时,我希望我的应用程序进入停止状态,而不是销毁状态. 在 Android docs 中,它指出: ...并非所有活动都有在按下 BACK 时被销毁的行为.当用户在 Music 应用程序中开始播放音乐然后按 BACK 时,应用程序会覆盖正常的返回行为,防止播放器 Activity 被破坏,并继续播放音乐,即使其 Activity 不再可见 如何在自己的应用程序中复制此功 ..
发布时间:2021-11-25 12:54:42 Java开发

覆盖 Java 中的成员变量(变量隐藏)

我正在研究 JAVA 中的覆盖成员函数,并考虑尝试覆盖成员变量. 所以,我定义了类 公共类A{公共 int intVal = 1;公共无效识别类(){System.out.println("我是A班");}}公共类 B 扩展 A{公共 int intVal = 2;公共无效识别类(){System.out.println("我是B班");}}公开课 mainClass{public sta ..
发布时间:2021-11-25 11:51:50 Java开发

覆盖 java equals() 方法 - 不起作用?

我今天在 equals() 方法中遇到了一个有趣(并且非常令人沮丧)的问题,这导致我认为是经过良好测试的类崩溃并导致了一个错误,这让我非常沮丧很长时间追查. 为了完整起见,我没有使用 IDE 或调试器 - 只是很好的老式文本编辑器和 System.out.时间非常有限,而且是学校的项目. 无论如何 - 我正在开发一个基本的购物车,它可以包含一个 Book 对象的 ArrayLis ..
发布时间:2021-11-25 11:41:17 Java开发

多态 vs 覆盖 vs 重载

就Java而言,当有人问: 什么是多态? 重载或覆盖是可接受的答案吗? 我认为还有更多的东西. 如果你有一个抽象基类定义了一个没有实现的方法,并且你在子类中定义了那个方法,那仍然是覆盖的吗? 我认为超载肯定不是正确的答案. 解决方案 表达多态最清晰的方式是通过抽象基类(或接口) 公共抽象类 Human{...公共抽象无效 goPee();} 这个类是抽象的 ..
发布时间:2021-11-25 11:26:41 Java开发

如何覆盖Java中的equals方法

我正在尝试覆盖 Java 中的 equals 方法.我有一个 People 类,它基本上有 2 个数据字段 name 和 age.现在我想覆盖 equals 方法,以便我可以在 2 个 People 对象之间进行检查. 我的代码如下 public boolean equals(其他人){布尔结果;if((other == null) || (getClass() != other.getC ..
发布时间:2021-11-25 11:26:19 Java开发

为什么 Java 不允许覆盖静态方法?

为什么不能覆盖静态方法? 如果可能,请举例说明. 解决方案 覆盖依赖于一个类的实例.多态性的要点是您可以对一个类进行子类化,并且实现这些子类的对象对于在超类中定义的相同方法(并在子类中被覆盖)将具有不同的行为.静态方法不与类的任何实例相关联,因此该概念不适用. 有两个因素影响了 Java 的设计.一个是对性能的关注:有很多批评 Smalltalk 说它太慢(垃圾收集和多态调用是 ..
发布时间:2021-11-25 10:40:57 Java开发

构造函数中可覆盖的方法调用有什么问题?

我有一个 Wicket 页面类,它根据抽象方法的结果设置页面标题. 公共抽象类 BasicPage extends WebPage {公共基本页面(){添加(新标签(“标题",getTitle()));}受保护的抽象字符串 getTitle();} NetBeans 用消息“构造函数中的可覆盖方法调用"警告我,但它应该有什么问题?我能想象的唯一替代方法是将其他抽象方法的结果传递给子类中的超级构 ..
发布时间:2021-11-25 10:25:20 Java开发

在 Java 中重写 equals 和 hashCode 时应该考虑哪些问题?

在覆盖 equals 和 hashCode 时必须考虑哪些问题/陷阱? 解决方案 理论(适用于语言律师和数学爱好者): equals() (javadoc) 必须定义一个等价关系(它必须是自反、对称和传递em>).此外,它必须一致(如果对象没有被修改,那么它必须保持返回相同的值).此外,o.equals(null) 必须始终返回 false. hashCode() (javad ..
发布时间:2021-11-25 10:07:34 Java开发

为什么不重写而不是使用抽象类?

这对很多人来说可能是一个简单的问题,但让我感到困惑.我从 Kathy Sierra 中挑选了一个例子来展示抽象类的实用性,但我无法理解抽象类的整体重要性. 示例我们有一个带有抽象方法的抽象类 Car - power() &topSpeed().这些方法在子类 BMW、Volkswagen 和 Audi 中实现. 我的问题是 - 为什么我们首先需要抽象类 Car 来为每种汽车类型自定义方 ..
发布时间:2021-11-25 09:50:07 Java开发

等效于 C++ 中的 Java 接口?

可能的重复: 如何在 C++ 中声明接口? c++中的java接口? 我是一名学习 C++ 的 Java 程序员,我想知道 C++ 中是否有类似 Java 接口的东西,即另一个类可以实现/扩展多个的类.谢谢.附言新来的,如果我做错了什么,请告诉我. 解决方案 在 C++ 中,一个只包含纯虚方法的类表示一个接口. 示例: //定义Serializable接口.类可序列化{/ ..
发布时间:2021-11-25 09:43:47 Java开发

接口和抽象类广告方法覆盖

代码如下: 接口嗨{公共无效meth1();}抽象类 Hullo{公共抽象无效 meth1();}公共类 Hello 扩展了 Hullo 实现了 hi{公共无效 meth1(){}} 问题:代码编译和一切.我想知道 Hello 类中的 meth1() 覆盖了哪个 meth1()?接口中的ont还是抽象类中的ont,为什么? 解决方案 答案很简单:两者都...... 事实上,正确地 ..
发布时间:2021-11-25 09:39:26 Java开发

内部抽象方法.为什么会有人拥有它们?

我今天在做一些代码审查,发现了一些开发人员编写的旧代码.事情是这样的 公共抽象类 BaseControl{内部抽象 void DoSomething();} 如果你在同一个程序集中有一个派生类,它会工作 公共类 DerivedControl : BaseControl{内部覆盖 void DoSomething(){}} 但是在不同的程序集中派生基类会导致编译时错误 DerivedCon ..
发布时间:2021-11-25 09:38:34 C#/.NET

Java克隆抽象对象

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