A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

java中方法的知识点和递归调用

方法执行原理:(方法不调用不执行,调用才执行)
 *   方法在调用的这时候,才会在内存中划分空间
 *   方法在调用的时候,是在栈内存中分配的空间(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被调用了" );
    }
}




点评

1111111111111111  发表于 2017-3-1 12:43

评分

参与人数 2黑马币 +5 收起 理由
qq372854822 + 3 睡个好觉
Simplemrt + 2

查看全部评分

来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端

20 个回复

正序浏览
递归之前看书没有弄懂,最后看了刘意的视频,一目了然!
回复 使用道具 举报
ccv5873 发表于 2017-3-1 13:16
递归这个之前看书没有弄懂,后来看了刘意的视频,简直是一目了然啊

嗯 当然是视频里讲的透彻
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
递归这个之前看书没有弄懂,后来看了刘意的视频,简直是一目了然啊
回复 使用道具 举报
newu 发表于 2017-3-1 12:46
收藏了,感谢楼主的无私分享

客气了
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
newu 黑马帝 2017-3-1 12:46:02
16#
收藏了,感谢楼主的无私分享
回复 使用道具 举报
灬Wonder 发表于 2017-3-1 12:42
1111111111111111111111111

2222222222
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
1111111111111111111111111
回复 使用道具 举报
Simplemrt 发表于 2017-2-28 23:52
好复杂,看不懂啊

学习是循序渐进的事情,加油↖(^ω^)↗
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
Simplemrt 发表于 2017-2-28 23:52
好复杂,看不懂啊

。。没事,学习是循序渐进的事情,加油↖(^ω^)↗
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
回复 使用道具 举报
回复 使用道具 举报
嗯,很不错…………
回复 使用道具 举报
阿丿崔 发表于 2017-3-1 00:29
要多看视频啊

言之有理。早点休息吧,不早了
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
回复 使用道具 举报
yixinanwang 发表于 2017-3-1 00:24

。。。
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
回复 使用道具 举报
承让。 有啥不懂的可以私聊一下问我。
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
好666+,可惜太深奥了
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马