欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

JAVA方法的重载与覆写

程序员文章站 2022-05-31 09:54:07
...
方法的重载:(用于实现相同的功能,但需要不同的参数满足不同的用户)在同一个类中。

是指在一个类中可以定义相同的名字,相同或不同的返回值,但参数不同的多个方法(参数个数或参数类型)。调用时,运用重载,对于用户使用API来说,就简单方便。不用为相同功能的方法起不同的名字,话说起来也方便,对用户来说做相同的事情,像是调用同一个函数一样。构造方法也可以重载。只要程序自己定义了构造方法,系统则不提供默认的构造方法。

方法的覆写(重写):(子类覆写父类的方法,在不同的类中)

方法的重写(override/overwrite)

与重载区别:方法重载是在一个类中定义多个函数名相同返回类型相同,但参数不同的

重写方法时:最好是采用copy父类的该函数

1、 在子类中可以根据需要对从基类中继承来的方法进行重写。

2、 重写方法必须和被重写方法具有相同方法名称、参数列表和返回类型。

3、 重写方法不能使用比被重写方法更严格的访问权限。

严格顺序private>default>protecte>public ,这个与多态有关,讲了多态就会明白得多。当某个地方由父类修饰了,可以调用父类的某个方法。若子类对该方法访问更严格,当传递子类过来,那么可能造成不可访问

java的多态:重载+覆写

问题:Java中使用什么机制实现多态?

多态是Java面向对象的特征之一,Java中通过重载和覆写来完成多态性的不同表现。但是二者是有区别的。

1)重载(Overloading)

Java中方法的重载,指的是在类中可以创建多个方法,它们具有相同的名字,但具有不同的引数列(参数类型和个数)和不同的定义。而返回值的类型可以相同也不以不同,但是不能仅仅通过不同的返回值来区分重载函数。调用方法的时候根据参数列表来判断调用哪个方法。重载是一个类中的多态性表现。

2)覆写(Overriding)

Java中,子类默认可以继承父类中的方法,而不需要重新编写相同的方法,但是有时候,子类并不想原封不动的继承父类中的方法,而是做出一定的修改,这就是采用方法的覆写(也成为覆盖)来实现的。Java中覆写指的是,在子类中对父类中同一重名函数实现部分加以改变,但与父类的该方法的方法名、返回类型和参数列表都保持一致。即子类对父类中的函数进行重新定义,子类中的新方法将覆盖父类原有的方法。覆写是父类与子类之间的一种多态表现。

以上就是JAVA方法的重载与覆写的详细内容,更多请关注其它相关文章!