黑马程序员-java中方法的知识点和递归调用

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

方法执行原理:(方法不调用不执行,调用才执行)  *   方法在调用的这时候,才会在内存中划分空间  *   方法在调用的时候,是在栈内存中分配的空间(jvm有一块内存是栈内存)

 * 函数/方法目的: 还是为了代码重用  * 相同的类型的操作,不容重复的写代码  * 函数/方法:就是一段有名字的代码段

 * 方法的定义  *  [方法修饰符列表] 方法返回值类型 方法名(参数1,参数2,参数3....){  *          执行语句;  *  }  *  *  方法修饰符列表是可选的:权限控制的:public protected private /static  *  返回值类型:11中数据类型中的任意一种类型  *  没有返回值就:void  *  方法名只要是合法的标识符即可  *  方法形参列表,多个逗号隔开,形参也要指明数据类型;  *      形参:是指在函数/方法定义处,那些参数;数据类型 变量名, 数据类型,变量名,  *      实参:是指在函数调用处,传入的那个参数.  *  在方法体内部,如果有返回值(类型),用return语句;且return是结束函数的作用  *  方法的调用:从内存数据结构来讲就是压栈  *  方法的结束:从内存数据结构来讲就是弹栈

 *   方法的重载:  *          同一个类中,方法名相同,参数列表不同的方法叫方法的重载;  *          参数列表不同:可以是参数个数不同,可以是参数数据类型不同  *          方法的重载和返回值,和修饰符列表无关.  *  :这个十一中数据结构,就像弹夹,薯片盒子,后进去先出来

 

下面是递归调用的例子:

public class Method_10{     public static void main(String[] args){  //方法main入口         int i=100;  //声明数据类型i,赋值为100         m_1(i); //调用m1方法,赋值i为100         System.out.println( "hello world" );//调用m1后完成赋值,输出内容     }         public static void m1(int i){ //声明m_1方法            m_2(i) ; //调用m_2方法,i赋值为100            System.out.println( "方法m_1被调用了" );//运行原理:m_1方法中调用好了m_2,声明m_2方法并调用方法m_3,声明方法m_3,在m_3中输出"m3的方法中i="+i;输出m_3被调用了,i被赋值为100,m_3运行完后返回调用m_3处,在m_2声明中,m_3调用运行完成,输出方法m_2被调用;声名m_2运行完后,返回调用m_2处,在声明m_1中,m_2运行完成,输出"方法m_1被调用",返回调用m_1处,输出"hello word"     }     public static void m_2(int i){             m_3(i);             System.out.println( "方法m_2被调用了" );              }     public static void m_3(int i){
        System.out.println( "m_3方法中的i="+ i );         System.out.println( "方法m_3被调用了" );     } }

     这是我刚学习的内容,印象还比较深刻,所以总结一下,记录下来,方便以后查看,本文内容都是我根据自己的理解写下来的,有什么不对的地方还希望和大家多多交流,O(∩_∩)O谢谢!

 

转载于:https://www.cnblogs.com/itheimazl/p/4759225.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值