`
JasonRight
  • 浏览: 72924 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

jdk5:子类覆盖方法可以返回子类型

    博客分类:
  • Java
 
阅读更多

CoreJava.ch5.1.3

 

JDK1.4

 

interface A {
    
    List getList();
}

class B implements A {
    
    public ArrayList getList() {
        return null;
    }
}
 

error:

    - The return type is incompatible with A.getList()
    - implements A.getList

 

JDK5

   没有编译错误。

分享到:
评论

相关推荐

    JDK11源码 jdk-11.0.4 src源码

    10. **类加载机制**:JDK11的类加载机制仍然遵循“双亲委派模型”,源码中的`java.lang.ClassLoader`类及其子类展示了如何加载和查找类。 通过深入研究JDK11源码,开发者不仅可以了解到Java语言的最新发展,还能...

    JAVA设计模式在JDK中的应用

    构建器模式逐步构造一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们。JDK中的构建器模式应用有: - `java.lang.StringBuilder#append()`: 字符串构建。 - `java.lang.StringBuffer#append...

    JDK1.5泛型使用下载

    你将学习到,如果一个类型是另一个类型的子类型,那么该子类型也可以被用作泛型的类型参数。例如,Integer是Number的子类,所以`List<Number>`可以接受Integer对象。 **练习3:通配符** 通配符允许使用更通用的类型...

    jdk1.5学习总结

    extends`定义一个上界,如`List<? extends Number>`,表示可以接受任何Number类型或其子类型的列表。 - **下界通配符**: 使用`? super`定义一个下界,如`List<? super Integer>`,表示可以接受Integer类型或其父...

    JDK1.6 API帮助文档

    JDK1.6 API覆盖了Java语言的基本概念,如数据类型、控制结构、异常处理等。例如: 1. **类与对象**:Java是一种面向对象的语言,API中包含了许多核心类,如`java.lang.Object`,它是所有其他类的父类,提供了`...

    JDK1.5的泛型实现

    有时我们需要限制类型参数的范围,例如只允许它是某个类或接口的子类型。这可以通过在类型参数后加上extends关键字和一个边界类型来实现,如`class MyList<T extends Number> {...}`,这个例子中,T必须是Number或其...

    jdk1.5中的范型

    - **有限制的通配符**:`List<? extends T>` 表示列表中的元素类型是 `T` 或其子类型;`List<? super T>` 表示列表中的元素类型是 `T` 或其父类型。 例如: ```java void printElements(List<?> list) { for ...

    王者归来之JAVA2核心技术第1卷.基础知识7thJoin4.pdf

    但从JDK5.0开始,可以返回原方法返回类型的子类型。例如,`clone`方法可以返回更具体的类型,而非其原始的`Object`类型。 ### 总结 《王者归来之JAVA2核心技术第1卷.基础知识7thJoin4.pdf》是深入理解和掌握Java...

    V20-Java笔记整理-重要概念和常见陷阱梳理.docx

    - 多态性允许程序以统一的方式处理不同的子类型对象。 - 通过方法重写和接口实现实现多态。 **5.6 Final关键字** - `final`关键字用于声明不可修改的变量或不可继承的类。 - 使用`final`可以增强程序的安全性和性能...

    JavaSe总结JavaSe总结

    1. **方法覆盖(重写)**:子类可以覆盖父类的方法,但不能降低其访问级别,且返回类型必须与父类方法相同或为父类返回类型的子类。 2. **继承中的构造器**:子类构造方法默认调用父类的无参构造方法,若父类无无参...

    Java2实用教程电子教案.pdf

    - **成员变量的隐藏和方法的重写**: 子类可以覆盖父类的方法和变量。 **4.9 对象的上转型对象** - 当子类对象被声明为父类类型时,称为上转型对象。 **4.10 多态性** - 多态是指同一个行为在不同的对象中有不同的...

    10【接口、多态】1

    - **多态引用类型转换**:在Java中,多态允许一个父类型的引用指向其子类型对象,这被称为向上转型。这种转换是安全的,因为父类型的引用只能调用父类型的方法,而子类通常会重写这些方法,提供更具体的行为。 - *...

    java初级面试题

    List和Set接口都是Collection接口的子接口,因此它们共享这些方法。 2. **ArrayList与LinkedList的区别** - **数据结构实现**:ArrayList基于动态数组,而LinkedList基于双向链表。 - **随机访问效率**:...

    java2实用教程电子教案

    - **成员变量的隐藏与方法的重写**:子类可以覆盖父类的方法。 ##### 4.9 对象的上转型对象 - **概念**:将子类对象赋值给父类引用。 - **用途**:实现多态性。 ##### 4.10 多态性 - **定义**:同一操作作用于不同...

    java泛型实践

    extends T`表示`T`的子类型。这在处理不关心具体类型但需要满足一定条件的场景下非常有用。 6. **擦除与类型安全**:Java中的泛型是静态类型检查的,这意味着在编译时进行类型检查,但在运行时,泛型信息会被擦除...

    Generics_in_the_Java_Programming_Language.pdf

    2. 泛型和子类型化:泛型支持子类型化原则,即如果类型A是类型B的子类型,那么相应的泛型类型A是B的子类型。这种类型关系是协变的。 3. 通配符:通配符使用问号'?'作为类型参数的占位符,表示未知类型。它通常与...

    JDK API文档【汉语版】 1.8.rar

    7. **泛型**:Java 5引入了泛型,允许在类、接口和方法声明中使用类型参数,增强了类型安全性和代码重用。 8. **枚举类型**:Java 5增加了枚举,用于定义一组固定的常量,比传统的常量类更安全,不易被篡改。 9. *...

Global site tag (gtag.js) - Google Analytics