java基础巩固系列(一):override和overload之间的区别
2014-08-21 20:55
489 查看
Overload:顾名思义,就是Over(重新)——load(加载),所以中文名称是重载。它可以表现类的多态性,可以是函数里面可以有相同的函数名但是参数名、返回值、类型不能相同;或者说可以改变参数、类型、返回值但是函数名字依然不变。
Override:就是ride(重写)的意思,在子类继承父类的时候子类中可以定义某方法与其父类有相同的名称和参数,当子类在调用这一函数时自动调用子类的方法,而父类相当于被覆盖(重写)了。
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。
下边可以写一个overload的类让大家看一下效果:
Override:就是ride(重写)的意思,在子类继承父类的时候子类中可以定义某方法与其父类有相同的名称和参数,当子类在调用这一函数时自动调用子类的方法,而父类相当于被覆盖(重写)了。
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。
下边可以写一个overload的类让大家看一下效果:
public class varable { public static void main(String[] args) { System.out.println(add(1,2)); System.out.println(add(1,2,3)); } public static int add(int x,int...args){ int sum = x; for(int i =0;i<args.length;i++){ sum+=args[i]; } return sum; } }
相关文章推荐
- java基础巩固系列(二):Integer与int之间的区别
- java基础-------重载(Overload)和重写的区别(Override)
- Java基础——Override和Overload的含义与区别
- Java基础加强--overload 与override 的区别
- JAVA中的基础-----重载与重写(覆盖)的区别:overload与override
- 【JAVA基础小问题】Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?
- java基础―― Java中Overload和Override的区别
- Java中Override和Overload的区别
- java 多态性 Overload和Override的区别
- 【JAVA】Java中Overload和Override的区别
- Java基础之abstract class与interface,Override与Overload
- Java中Overload和Override的区别
- Java中overload和override的区别
- java中的Overload(重载)和Override(重写)的区别(二)
- java 张孝祥(9) overload与override的区别
- C# 基础系列--继承一(override和overload)
- [Java基础系列]HashTable 和 HashMap的区别
- JAVA:重载overload与覆盖(重写)override的区别
- Java中Overload和Override的区别
- Java笔试题:override和overload的区别