`

收藏:java中overload与override

    博客分类:
  • java
阅读更多
QUESTION NO: 3
1. class A {
2. protected int method1(int a, int b) { return 0; }
3. }
Which two are valid in a class that extends class A? (Choose two)
A. public int method1(int a, int b) { return 0; }
B. private int method1(int a, int b) { return 0; }
C. private int method1(int a, long b) { return 0; }
D. public short method1(int a, int b) { return 0; }
E. static protected int method1(int a, int b) { return 0; }

310-035中的题目,标准答案是A,C

A是override,access从protected---%26gt;public变宽了,因此是正确的。
B,D也是override,B从protected---%26gt;private变窄了,D的返回类型变了,所以都错误。
C是overload,access的宽窄和返回类型都无所谓,所以是正确的。
E是override,但是增加了static,因为static method cannot hide the instance method from super class.因此是错误的。
所以选AC。
子类继承父类并且覆盖父类方法的叫override --重写,覆写,覆盖
子类有多个相同方法名称,但是参数不同,叫overload - 重(zhong)载,过载


重载是:
当多个方法具有相同的名字而含有不同的参数时产生
那么对参数不同的调用,实际调用不同的方法
也可以理解为实际上有两个方法,名字同,参数不同!


覆盖(OVERWRITE)注意

不能降低原方法的"可见度

返回类型不同都不能构成方法的覆盖

重载(OVERLOAD)注意
只有参数不同才能构成重载

分享到:
评论

相关推荐

    overload and override

    在面向对象编程中,尤其是在Java语言中,`Overload`(重载)和`Override`(重写)是两个非常重要的概念,它们帮助开发者更好地组织代码并提高代码的复用性和灵活性。 #### 二、Overload(重载) **定义**: - `...

    Java overload和override的区别分析

    Java中的方法重载(Overloading)和重写(Overriding)是两个重要的概念,它们都是实现多态性的方式,但有着本质的区别。 1. **方法重载(Overloading)**: 方法重载是指在同一个类中可以有多个同名方法,但这些方法的...

    Override-Overload

    ### Override与Overload的区别 在面向对象编程中,方法重写(Override)和方法重载(Overload)是两个非常重要的概念。它们虽然都涉及到方法名称的重复使用,但是其本质含义、作用以及应用场景有着明显的区别。 ##...

    Java 重写(Override)与重载(Overload).pdf

    根据提供的文件信息,我们可以深入探讨Java中的两个核心概念:重写(Override)与重载(Overload)。这两个概念在面向对象编程中非常重要,尤其是在Java这样的语言中。 ### Java中的重写(Override) #### 什么是重写? ...

    软件工程全栈笔记:Java核心基础1

    方法重载(overload)是指同一类中有多个同名但参数不同的方法,而方法重写(override)是子类对父类方法的重新实现。 9. **内部类**:内部类包括成员内部类、局部内部类、匿名内部类等,提供更灵活的封装和代码...

    Java重写(Override)&重载(Overload).pdf

    Java中的重写(Override)和重载(Overload)是面向对象编程中的两个核心概念,它们都是为了提高代码的灵活性和可复用性。 **重写(Override)** 是指子类能够重新定义父类中非私有(public或protected)的方法,以便在...

    PHP中overload与override的区别

    总的来说,`override` 用于子类改变父类的特定行为,而 `overload` 则是通过不同的参数列表在同一个类中创建多个同名方法。两者都是提高代码灵活性和可扩展性的手段,但它们作用的范围和方式不同。理解并正确使用这...

    文章分类:Java编程,java面试题1

    12. **方法重载(Overload)与方法覆盖(Override)的区别:** - 方法重载(Overload)是指在同一类中,方法名称相同但参数列表不同(参数个数、类型或顺序不同)的情况。 - 方法覆盖(Override)发生在子类中,...

    07abril2021:Java对象类活动

    在Java中,类是一种模板或蓝图,它定义了数据结构和可以与这些数据进行交互的方法。类是对象的创建者,它描述了对象的状态(属性或变量)和行为(方法)。例如,你可以创建一个名为“Person”的类,该类具有如“name...

    Java:Java代码仓库

    Java通过方法重写(Override)和方法重载(Overload)来实现多态。 5. **异常处理**:Java提供了丰富的异常处理机制,包括try-catch-finally语句块,以及自定义异常类,以确保程序在遇到错误时能够优雅地处理并恢复...

    Override,Overload,Overwrite的区别---马克-to-win Java视频

    Override Overload Overwrite 马克-to-win Java视频

    Java课程总结.pdf

    - 方法重载与覆盖:Java中的方法重载(overload)和方法覆盖(override)是面向对象多态性的体现。 3. Java集合框架 - Collection:Java的集合框架包括`Set`、`List`、`Map`等接口,用于存储和管理对象集合。 - ...

    JAVA 综合面试题.doc

    1. Overload 和 Override 的区别:Overload 是方法重载,Override 是方法重写。Overloaded 的方法可以改变返回值的类型。 2. Final 类的特点:Final 类不能被继承。 3. 继承时候类的执行顺序问题:父类的静态变量和...

    java语言程序设计(第八版)复习题答案

    复习题可能涉及super关键字的使用,以及重写(override)和重载(overload)的区别。 5. **接口**:Java中接口用于实现多重继承,提供了一种定义行为的标准。复习题可能考察接口的定义、实现和接口间的继承。 6. *...

    java核心技术(第七版)源代码

    10. **多态**:源代码将展示多态的概念,包括方法的重写(override)和重载(overload),以及接口的实现。 11. **异常处理**:Java的try-catch-finally结构用于捕获和处理运行时错误,源代码会展示如何有效地使用...

    java中相似概念的区别

    本文将重点解析标题与描述中提及的一些关键知识点,包括final、finally、finalize的区别,以及HashMap与Hashtable、Collection与Collections、Overload与Override等概念的不同之处。 ### final、finally、finalize ...

    java基础f复习

    - **方法重载**(Overload):在同一个类中,方法名相同但参数列表不同的多个方法。 - **方法覆盖**(Override):子类重写父类的方法,方法签名(方法名和参数列表)必须完全相同。 - **方法参数传递**:Java中...

    java 经 典 面 试 题

    本文辑集了 Java 面试题的相关知识点,涵盖了 Java 基础知识、面向对象编程、事件委托机制、垃圾回收机制、序列化、多重嵌套循环、排序算法、Overload 和 Override、Final 类、继承、内部类、集合框架等多方面的内容...

    Java程序设计练习题及答案.doc

    - **知识点**: Java中的方法重载(`overload`)与重写(`override`)。 - **解析**: 方法重载指的是在同一类中具有相同名称但参数列表不同的方法;方法重写是指在子类中覆盖父类的方法。 3. **访问控制修饰符的作用域...

Global site tag (gtag.js) - Google Analytics