`

java中重载与重写的区别(含示例代码)

    博客分类:
  • java
阅读更多

java中重载和重写的区别:

1. 重载:

  • 必须就有不同的参数列表;
  • 可以有不同的返回类型;
  • 可以有不同的访问修饰符;
  • 可以抛出不同的异常;

举例:

    public class Demo{

          void speak(){

              System.out.println("重载方法");

          }

         void speak(int a){

             System.out.println(a);

        }

   }

注意:不能以返回类型来区分重载方法,只能以“参数类型”和“类名”来区分。

2.重写:

  • 参数列表必须与被重写的方法的相同;
  • 返回的类型必须与被重写的方法的相同;
  • 访问修饰符的限定必须大于被重写的方法的访问修饰符(public>protected>default>private);
  • 重写方法一定不能抛出新的检查异常或者重写的方法申明更加宽泛的检查异常;

举例:

    public class Father{

               public void speak(){

                    System.out.println("Father");

               }

    }

   public class Son extend Father{

             public void speak(){

                    System.out.println("Son");

             }

 }

 

分享到:
评论

相关推荐

    java 函数的重载和重写实例代码

    本文主要介绍Java 的重载和重写,学习java的同学都知道Java的多态有多重要,这里给大家举例说明函数的重载和重写,希望能帮助有需要的小伙伴

    Java方法重载和重写原理区别解析

    主要介绍了Java方法重载和重写原理区别解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    Java重写(Override)与重载(Overload)区别原理解析

    主要介绍了Java重写(Override)与重载(Overload)区别原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    src.zip Java的面向对象编程·讲解代码

    通过这段代码源码资源,目标是提供一个清晰而易懂的示例,帮助学习者更好地理解Java中的面向对象编程原则和概念。它将演示如何创建类和对象,如何定义和使用继承关系,如何利用封装实现数据隐藏,以及如何利用多态...

    java基础案例与开发详解案例源码全

    2.3.4 Java代码中的注释23 2.3.5 常见错误解析24 2.4 Java类库组织结构和文档27 2.5 Java虚拟机简介28 2.6 Java技术两种核心运行机制29 2.7 上机练习30 第3章 3.1 变量32 3.1.1 什么是变量32 3.1.2 为什么需要变量32...

    JAVA基础课程讲义

    进程与程序的区别 168 JAVA中如何实现多线程(重点!!) 168 通过继承Thread类实现多线程 168 通过Runnable接口实现多线程 169 线程状态和sleep/yield/join/stop/destroy方法 170 新生状态 170 就绪状态 170 运行...

    《java面向对象程序设计-继承和多态》教案.doc

    super () 方法始终指向调用类的父类 调用父类构造方法 演示:示例 3 多态性 2-1 多态性是指¡°多种形式¡± 它使用不同的实例而执行不同操作 多态包括方法重写和方法重载 多态性 2-2 方法重载 2-1 方法重载 2-2 ...

    《面向对象编程与设计(Java)》课后作业及参考解答.pdf

    1/7 页 《面向对象编程与设计(Java) 》课后作业及参考解答 1.1.1 第一周 课程(9 月 4 日)的课后作业及参考解答 1、 请用 Java 程序示例说明什么是面向过程的程序设计方法、什么是面向对象的程序 设计方法?...

    Java编程复用类代码详解

    主要介绍了Java编程复用类代码详解,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下

    javaSE代码实例

    8.6.3 重写与重载的区别 149 8.7 final与继承 149 8.7.1 最终的类 149 8.7.2 最终的方法 150 8.8 abstract与继承 151 8.8.1 抽象的类 151 8.8.2 抽象的方法 152 8.9 基于继承的多态 154 8.10 小结...

    pro_android_cpp_with_the_ndk.pdf

    4.8 从原生代码中调用Java 4.8.1 异步通信 4.8.2 启用Directors 4.8.3 启用RTTI 4.8.4 重写回调方法 4.8.5 更新HeIIojniActivity 4.9 小结 第5章 日志、调试及故障处理 5.1 日志 5.1.1 框架 5.1.2 原生日志API ...

    Grails权威指南

     1.4.1 与java集成  1.4.2 简单而强大  1.4.3 吸取的经验教训  1.5 使用grails的原因  1.6 grails入门  1.6.1 运行grails命令  1.6.2 义不容辞的“hellocworld!”  1.7 单元测试  ...

    Grails 中文参考手册

    2.3 Hello World示例 2.4 使用IDE 2.5 规约配置 2.6 运行Grails应用 2.7 测试Grails应用 2.8 部署Grails应用 2.9 所支持的Java EE容器 2.10 创建工件 2.11 生成Grails应用 3. 配置 3.1 基本配置 3.1.1 内置选项 ...

    C语言解析教程(原书第4版)(美) 凯利.pdf

    《c语言教程(原书第4版)》的一个鲜明特色就是结合大量示例描述c语言的重要特征,并对很多工作代码给出了逐步的分析,以这种独特的教学方法向读者解释新接触的编程元素及一些惯用法。  《c语言教程(原书第4版)》...

    Android C++高级编程:使用NDK_Onur Cinar, 于红PDF电子书下载 带书签目录 完整版

    4.8 从原生代码中调用Java 108 4.8.1 异步通信 108 4.8.2 启用Directors 109 4.8.3 启用RTTI 109 4.8.4 重写回调方法 109 4.8.5 更新HelloJni Activity 110 4.9 小结 110 第5章 日志、调试及故障处理 111 ...

    C++数据抽象和问题求解(第6版).[美]Frank M. Carrano(带详细书签).pdf

    这本经典、畅销的数据结构教材详细介绍了数据抽象的基础知识,强调作为面向对象方法基础原理的规范和实施之间的区别。书中使用的软件工程原则和概念以及UML图便于增强学生的理解。 ◆ 详细介绍了数据抽象,强调规范...

    C#微软培训资料

    18.2 在 C #代码中调用 C++和 VB 编写的组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 附录 C .Net 名字空间...

    【05-面向对象(下)】

    接口与抽象类的区别 •接口里只能包含抽象方法,不同包含已经提供实现的方法;抽象类则完全可以包含普通方法。 •接口里不能定义静态方法;抽象类里可以定义静态方法。 •接口里只能定义静态常量属性,不...

Global site tag (gtag.js) - Google Analytics