Java的overload(重载)与override(重写,覆盖)的区别

一,overload(重载)
1,overload(重载)表示同一个类中可以有多个名称相同的方法,但是这些方法的参数列表各不相同(即不同的参数类型,不同的参数个数,不同的参数顺序,)。overload可以改变返回值类型。

2,重载是一个类中多态性的一种表现。

例如:

public void m1(int x)
{ }public int m1(int x, int y)
{return x+y;
}public String m1(int x, int y,int z)
{return "abc";
}public String m1(int x, String str)
{return "chongzai2";
}

2,overload(重载的特点)
第一:不能通过访问权限,返回类型,抛出的异常进行重载;
第二:方法的异常类型和数目不会对重载造成影响的;
第三:对于继承来说,如果某一个方法在父类中的修饰符是private,那么就不能在子类对其进行重载了。如果要定义的话,也只是定义了一个新方法。

二,override(覆盖,重写)
1,override(重写)是父类与子类之间多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写了。子类的对象(实例)使用了这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被屏蔽了。

2,override(重写)的程序:

import java.util.*;
class A{            //父类public int getVal(){return 5;}
}class B extends A{  //通过子类对父类抽象方法的覆盖来实现多态,public int getVal(){return 10;}
}public class Test3{public static void main(String []args){B b=new B(); //通过子类创建的实例对象,调用A te=(A)b;int x=b.getVal();//调用这个方法,将调用子类中的定义方法。System.out.println(x);}
}

返回的结果为: 10

3,override(重写)的特点:
第一:覆盖的方法的返回值必须和被覆盖的方法返回一致;
第二:覆盖的方法抛出的异常必须和被覆盖方法的所抛出的异常一致,或者是其子类。
第三:被覆盖的方法不能被定义为private。否则在其子类中只是新定义了一个方法,并没有对其进行覆盖。

Java中,overload与override的区别相关推荐

  1. java中overload与override的区别

    1.综述  重写(Override)也称覆盖,它是父类与子类之间多态性的一种表现,而重载(Overload)是一个类中多态性的一种表现. override从字面就可以知道,它是覆盖了一个方法并且对其重 ...

  2. Java学习-Overload和Override的区别

    1.Overload是重载的意思,Override是覆盖的意思,也就是重写. 2.重载Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同). 3 ...

  3. Java中重载和复写的区别

    Java中重载和复写的区别 重载(overload) 复写(override) 区别和联系 重载(overload) 函数重载的最突出的例子就是类的构造函数,用户定义一个对象时可能会提供多种参数组合: ...

  4. 类的 三大特性 封装,继承,多态 overload与override的区别

    OOP三大特性:封装,继承,多态 封装的目的:为了让类更安全 封装的做法: 1.类里面的成员变量做为private 2.使用成员方法来间接访问成员变量 3.在该方法里面加限制条件 php类里面不允许出 ...

  5. Overload和Override的区别。

    Overload和Override的区别. Overloaded的方法是否可以改变返回值的类型? Overload是重载的意思,Override是覆盖的意思,也就是重写. 重载Overload表示同一 ...

  6. Overload 和Override 的区别。Overloaded 的方法是否可以改变返回值

    Overload 和Override 的区别.Overloaded 的方法是否可以改变返回值的类型? Overload 是重载的意思,Override 是覆盖的意思,也就是重写. 重载Overload ...

  7. Overload和Override的区别说明

    下文笔者讲述Overload和Override的区别简介说明,如下所示: Overload:重载Override:覆盖(重写)------------------------------------- ...

  8. JAVA中重写和实现的区别_Java中重载和重写的区别

    Java中重载和重写的区别 1.1重载是什么 Overloading   方法重载是让类以统一的方式处理不同类型数据的一种手段,多个同名函数同时存在,具有不同的参数个数/类型 1.2为什么用重载 重载 ...

  9. java中的异常种类和区别以及处理机制和区别

    java中的异常种类和区别以及处理机制和区别 按照异常需要处理的时机分为编译时异常(也叫强制性异常)也叫 CheckedException 和运行时异常(也叫非强制性异常)也叫 RuntimeExce ...

  10. java中ArrayList和LinkedList的区别

    首先来看ArrayList和LinkedList的集成类和接口的区别.// lang java public class ArrayList<E> extends AbstractList ...

最新文章

  1. java 字符串写入word,JAVA 将字符串hollow 替换成word肿么实现?
  2. 电脑技术吧_极简技术|快速整理电脑桌面繁乱的图标
  3. 怎么样武直不打_打HPV疫苗期间意外怀孕?怎么办?
  4. 如何实现从wgs-84到beijing54的坐标转换
  5. Fragment生命周期及其使用
  6. mysql 事务 innodb 锁表_MySQL性能优化之Innodb事务系统,值得收藏
  7. python自动执行脚本
  8. python3携程多任务_python3之携程yield及greenlet
  9. 小米平板4/4plus手机屏幕驱动板使用步骤说明
  10. QTcpSocket使用发现的问题
  11. [转]二十四式太极拳攻防含义拆解
  12. Javascript DOM readyState 属性
  13. 最#全#的#海#淘#网#址#大#全
  14. 八百八十岁也没活明白
  15. 端到端的框架DeepInf
  16. k8s中将flannel网络切换calico网络
  17. macOS 使用 X11 运行远端 linux 中的 x11 client 图形程序
  18. 蜂鸣器播放音乐《好运来》^_^
  19. 一些实用的安卓UI设计工具
  20. XX集团工厂集成改造MES+SCADA数字化项目实施方案原创

热门文章

  1. python播放视频代码_python脚本抓取优酷在线视频地址代码
  2. Android webView 的一个坑,字体怎么突然变小了
  3. python 小于等于号不支持int string_为什么这个Python String的大小会在失败的int转换中发生变化...
  4. 多功能版系统微群人脉平台开发
  5. Ansible纸上谈兵02:常用模块
  6. 【仪器仪表专题】改装和拆解UT136A万用表
  7. mysql在k8s集群中的搭建并且实现持久化存储
  8. 《大话计算机》同款T恤,我要了!!
  9. vue-day3计算属性、监听器、过滤器、混入、插件、生命周期、网络请求、组件
  10. C2760语法错误:意外标记“标识符”,应为“;”