java方法

目录

1、方法的定义

2、带返回类型的方法定义

3、返回类型:

4、方法的重载

5、JVM内存模型变化

6、方法的递归


1、方法的定义

修饰符 返回值类型 方法名(形式参数){
    方法体
}
//实现从老代码迭代成新代码
//修饰符      方法无返回   方法名   参数列表
public static void      print(String str) {
        
}

2、带返回类型的方法定义

修饰符 返回值类型 方法名(形式参数){
    方法体
        
    return 返回值类型;

  1. return 的作用:结束当前的方法,可以单独用,还可以带返回类型用

 3、返回类型

    • 八大基本数据类型

    • 引用数据类型

    • void(没有返回)

注意:方法的可变参数底层实际上就是数组  

4、方法的重载

 

  • 定义:同一个类里面,方法允许存在一个以上的同名方法,要求参数列表不同

  • 参数列表不同:

    • 1.参数类型不同

    • 2.参数顺序不同

    • 3.参数个数不同

  • 和返回值类型无关

5、JVM内存模型变化

 

  1. 栈:是线程私有的,生命周期与线程相同,线程之间不共享,里面拥有多个栈帧

    • 局部变量

      • 方法内定义的局部变量

      • 参数列表变量

      • 对象引用(指向对象的引用地址)指向堆里面

    • 栈是一块连续的空间,相对于堆来说,内存较小,运行速度较快,不需要垃圾回收机制

  2. 堆:是jvm 内存模型最大的一块,被所有共享,在jvm 启动时所创建。

    • 存放对象实例(new 对象)并且会给初始值

    • 需要垃圾回收机制回收垃圾,

    • 配置大小:-Xmx -Xms

    • 如果堆中的对象没有被栈引用时,会被垃圾回收器不定时回收。

  3. 字符串常量池:存储在类加载完成,经过验证,解析阶段的一些常量字符串。

  4. 程序计数器pc:

    • 是一块很小的内存区域,记录当前线程执行的字节码的行号指示器,可以去通过计数器控制,指令,循环,跳转。

    • 线程私有,每条线程都有自己的程序计数器

  5. 方法区:

    • 类信息,记录类的字节码信息,常量池(String 和 包装类)

  6. GC(垃圾回收器):不定时的回收垃圾,回收一些没有引用的堆内存的垃圾,不需要程序员手动操作。

6、方法的递归

  1. 定义:方法自己调用自己

  2. 使用递归计算5的阶乘

 

public static int recursion(int num) {
    if (num == 1) {
        return 1;
    }
    int recursion = recursion(num - 1);
    int ret = num * recursion;
    return ret;
}

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值