Java语言基础之方法的重载

概述

在引入方法的重载概念之前,我们先来了解一下类的构造方法的相关概念。在类中除了成员方法之外,还存在一种特殊类型的方法,那就是构造方法。构造方法是一个与类同名的方法,对象的创建就是通过构造方法完成的。每当类实例化一个对象的时候,类都会自动调用构造方法。
构造方法的特点如下:

  • 构造方法没有返回值;
  • 构造方法的名称要与本类的名称相同。

注意:如果在类中定义的构方法都不是无参的构造方法,那么编译器也不会为类设置一个默认的无参构造方法,也就是说,只要程序员自定义了构造方法,那么编译器将不会设置默认的构造方法,当试图调用无参构造方法实例化一个对象时,编译器会报错。所以说只有在类中没有定义任何构造方法时,编译器才会在该类中自动创建一个不带参数的构造方法。

方法重载的概念

从前面的概述可以知道,构造方法的名称已经由类名决定,所以构造方法只有一个名称,但是如果希望以不同的方式来实例化对象,就需要使用多个构造方法来完成。由于这些构造方法都需要根据类名进行命名,为了让方法名相同而形参不同的构造方法同时存在,必须用到“方法重载”。虽然方法重载源于构造方法,但是它也可以应用到其它方法中。
什么时候需要使用方法的重载呢?
在同一个类中,如果存在“功能1”和“功能2”它们的功能相似,那么可以考虑将它们的方法名设置为一样的,这样可以使得整体的代码看起来比较美观,同时易于后期代码的记忆编写。
Tips:方法重载并不可以随意使用,如果两个功能根本不相似,一点关系都没有,那么将其编写为方法重载的时候只会导致编码更加麻烦,不利于后期代码的编写。
方法重载的条件是什么?
条件1:在同一个类当中
条件2:方法名相同
条件3:参数列表不同
      ⬇⬇⬇

  • 参数的个数不同算不同;
  • 参数的类型不同算不同;
  • 参数的顺序不同算不同。

只要同时满足以上三个条件,那么我们就可以认为某两个方法发生了重载机制。
Tips:方法重载和方法的”返回值类型“无关;方法重载和方法的”修饰符列表“无关。


看完本期博客你需要思考的问题有:

//前提条件:下列方法在同一个类当中
public static int method1(int a){
    
    
         return a;
}
public static int method1(int a,int b){
    
    
         return a+b;
}
//method1构成了方法重载吗?
//前提条件:下列方法在同一个类当中
public static int method2(int a){
    
    
         return a;
}
public static void method2(int a){
    
    
}
//method2构成了方法重载吗?

Tips:下期博客会有完整解答哦。


以上内容均为个人学习的一点心得,其中的知识点若有错误请留言提醒,若有侵权内容提醒马上删除。

猜你喜欢

转载自blog.csdn.net/pf6668/article/details/107348077
今日推荐