zoukankan      html  css  js  c++  java
  • Java方法重载浅谈

    Java方法重载浅谈

    目录:

    1. 方法重载的定义
    2. 方法重载的满足条件
    3. 方法重载的传递
      • 基本类型
      • 引入类型
    4. 方法重载的好处

    方法重载的定义以及满足条件:

    定义:

    方法重载指同一类中定义多个方法之间的联系;

    满足方法重载的条件:

    1. 多个方法在同一个类中
    2. 多个方法具有相同的方法名
    3. 多个方法的参数不同、类型不同、数量不相同

    条件解释:

    在同一个Moverloading类下,并且多个相同的方法名的类型不同-->int、boolean、void(无类型)

    package 方法;
    
    public class Moverloading {
        public static void main(String[] args) {
            public static void getmax(){
                //方法体
            }
            
            public static int getMax(){
                //方法体
            }
            
            public static boolean getmax(){
                //方法体
            }
        }
    }
    
    

    多个方法的参数不同、类型不同、数量不同:

    参数不同:

    package 方法;
    
    public class Moverloading {
        public static void main(String[] args) {
            public static void getmax(String name){
                //方法体
            }
    
            public static void  getMax(int age){
                //方法体
            }
        }
    }
    
    

    类型不同:

    package 方法;
    
    public class Moverloading {
        public static void main(String[] args) {
            public static void getmax(String name){
                //方法体
            }
            
            public static void getMax(int age){
                //方法体
            }
        }
    }
    
    

    数量不同:

    package 方法;
    
    public class Moverloading {
        public static void main(String[] args) {
            public static void getmax(String name){
                //方法体
            }
            
            public static void getMax(String name,int age){
                //方法体
            }
        }
    }
    
    

    方法重载的传递:

    例子:

    package 方法;
    
    public class functTansale {
        public static void main(String[] args) {
            int num  =100;
            System.out.println(num);
            System.out.println("-------------");
            int callback = Change(num);
            System.out.println(callback);
        }
        public static int  Change(int num){
            num = 200;
            return num;
        }
    }
    
    

    在数组中传递:

    package 方法;
    
    public class arryTranslate {
        public static void main(String[] args) {
            int[] arr = {10,20,30};
            System.out.println(arr[1]);
            System.out.println("---------");
            change(arr);
            System.out.println(arr[1]);
    
        }
        public static void change(int[] arr){
            arr[1] = 100;
    
        }
    }
    

    重载的好处:

    不用为了对不同的参数类型或参数个数,而写多个函数,系统可以自动匹配;

    多个函数用同一个名字,但参数表,即参数的个数或(和)数据类型可以不同,调用的时候,虽然方法名字相同,但根据参数表可以自动调用对应的函数。

    这样我们在调用的时候,就不需要记那么多的方法名称,而是知道了方法的功能就可以直接的给他传递不同的参数,编译器会明确的知道我们调用了哪一个方法。重载比if...else要优雅,减少了if...else部分的代码。


    练习:

    数组遍历(应用)

    数组最大值(应用)

    代码链接:https://github.com/xbhog/JavaBasis/blob/master/JavaStudy/src/day5/ArrTraveMax.java

    结束:

    之前方法重载部分理解有些问题,解决后记录下来,后面方便理解,不对之处欢迎指出,谢谢!

    重载的具体内容参考:https://www.cnblogs.com/xbhog/p/13454021.html

  • 相关阅读:
    Python——functools
    Python——eventlet.greenpool
    Python——eventlet.event
    Python——greenlet
    (诊断)git review时出现fatal: ICLA contributor agreement requires current contact information.错误
    Ubuntu Server对OpenStack的支持
    OpenStack Keystone架构
    (原创)OpenStack服务如何使用Keystone(一)---Keystone端的操作
    (资源)Git优秀学习资源
    (资源)OpenStack IRC资源
  • 原文地址:https://www.cnblogs.com/xbhog/p/13848480.html
Copyright © 2011-2022 走看看