• 13方法


     

    方法的执行在栈中,加载在方法区

    访问修饰符 返回值类型 方法名(参数1,参数2);

        public static void delect(int i,int j)
        {
            
        }

    这个方法的方法签名是delect(int,int)

    调用方法的时候:先是进行精确匹配,如果没有精确匹配的方法,那么就进行相对精确的匹配

    方法调用的时候如果传入的是基本数据类型,相当于是值的拷贝,那么形参的改变不影响实参,如果是引用数据类型,相当于传入的是地址,这个时候形参的改变会影响到实参

    方法的重载:

    在一个类中,出现了方法名一致但是参数列表不一致的方法 方法是根据方法签名进行区分的

    相对精确匹配的数据类型必须小转大

        public static void main(String[] args) {
            int i=1;
            //m(1.0,1.0);
    
        }
        public static void m(int i,int j)
        {
            System.out.println("int,int");
        }
        public static void m(int i,double j) {
            System.out.println("int,double");
        }
        public static void m(double j,int i) {
            System.out.println("double,int");
        }

     方法的传值

     

        //所有的方法执行在栈中
        public static void main(String[] args) {
            int i=1;
            int[] arr={1,2,3};
            //调用方法
            //实参---实际赋予参数的值
            //如果传入的实参是基本类型,就是值的拷贝
            //m(i);//1
            //m(arr[1]);//1  数组元素---基本类型
    
            //如果参数是引用数据类型,就是地址值的拷贝
            //方法中拿到拷贝过来的地址值找到堆内存改变元素
            //就会对原堆空间影响
            //n(arr); //10
            //方法中拿到拷贝过来的地址值如果找到的不是原堆空间
            //做任何操作影响都不会影响原堆空间
            //mn(arr);//1
            System.out.println(arr[0]);
        }
        //形参---用于接收的参数
        public static void m(int i){
            i++;
            //System.out.println(i);
        }
    
        public static void n(int[] arr){//数组类型---数组地址值
            arr[0]=10;
        }
    
        public static void mn(int[] arr){
            arr=new int[4];
            arr[0]=10;
        }

    方法的递归

    方法中调用了方法的本身

    public class HellowWorld {
        public static void main(String[] argv ) {
            System.out.println(sum(11));
        }//endmain,
    
        public static int sum(int i)
        {
            if(i==1) //递归的出口
                return i;
            return i+sum(--i);
    
    
        }
    }//endclass

     

  • 相关阅读:
    Java调用wcf
    登录重构小记
    从零打造一个Web地图引擎
    Vue动态组件的实践与原理探究
    揭开Vue异步组件的神秘面纱
    使用vue实现排序算法演示动画
    C#转义字符
    asp.net使用post方式action到另一个页面,在另一个页面接受form表单的值!(报错,已解决!)
    页面关闭事件onbeforeunload 记录
    执行一段sql
  • 原文地址:https://www.cnblogs.com/xuwangqi/p/11043765.html
Copyright © 2020-2023  润新知