当前位置: 首页 > 知识库问答 >
问题:

Java8中缺省方法实现的必要性

仲元凯
2023-03-14

你能详细说明下面的答案是什么意思吗?

您应该能够切换到Java8,而不必在类中实现新方法

共有1个答案

姜煌
2023-03-14

最初问题的发问者M Sach说,不是默认方法,而是将默认实现放在一个抽象类中。

回答者Eran说,这将破坏现有的代码。

例如,假设您有自己的list实现,该实现是用Java7编写的,它不是从AbstractList继承的。当您将代码迁移到Java8时,会发生什么?在list接口中突然出现了一堆您自己的list实现没有的新方法(这些方法的“默认”实现在abstractlist中,您的类不继承这些方法)!您的代码将不再编译。

 类似资料:
  • 我被C++14的编译器错误弄糊涂了。它涉及成员变量的缺省构造函数的必要性。在下面的代码中,类A没有默认构造函数。类B有一个由它移动分配的类型a的成员。编译器抱怨缺少的默认构造函数,即使我没有显式地调用它。在B的构造函数中是否有一些对A的默认构造函数的隐式调用,而我缺少了这些调用?我的理解是,如果您在B的构造函数中初始化B的成员,那么默认构造函数就不是必需的。 当B被注释掉时,main中的代码工作得

  • 有没有java api可以让我跳过流直接操作集合(比如C#中的?):

  • 本文向大家介绍Django的URLconf中使用缺省视图参数的方法,包括了Django的URLconf中使用缺省视图参数的方法的使用技巧和注意事项,需要的朋友参考一下 一个方便的特性是你可以给一个视图指定默认的参数。 这样,当没有给这个参数赋值的时候将会使用默认的值。 例子: 在这里,两个URL表达式都指向了同一个视图 views.page ,但是第一个表达式没有传递任何参数。 如果匹配到了第一个

  • 问题内容: 我正在使用Eclipse for Java Develepers(在Windows 7上运行的Juno x64)。 我有一个项目正在尝试不再需要的jar(args4j),因此删除了依赖项。在某个时候,我的PC意外断电,从那以后,我重新启动了Eclipse。 我的项目现在有一个错误。在删除依赖项而没有任何问题之后,我在该项目上工作了一段时间。 在“项目属性”>“ Java构建路径”下,任

  • 下面是一个简单的例子,展示了我的问题: 在中,我提供了方法和的实现,这是来自的唯一抽象方法。但是,当我编译时,我仍然会遇到以下错误: 类型MyWork必须实现继承的抽象方法AbstractCollection.size() 或者 我的任务。java:3:错误:MyTask不是抽象的,并且不重写AbstractList中的抽象方法get(int) (取决于编译器)。当然,我使用的是java 8。 所

  • 本文向大家介绍javascript省市级联功能实现方法实例详解,包括了javascript省市级联功能实现方法实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了javascript省市级联功能实现方法。分享给大家供大家参考,具体如下: 初步实现方法: 改进实现方法: 改进方法2: 希望本文所述对大家JavaScript程序设计有所帮助。