2019-03-08

方法

  • 1.方法的执行过程中的内存分析
  • 2.方法的重载机制
  • 3.方法的递归调用

内存分析

  • 方法区内存:代码片段——System.class、String.class、 Methodtest.class、、、
  • 堆内存
  • 栈内存:局部变量,程序运行有顺序(先进后出,后进先出)【压栈、弹栈】

重载机制overload

  • 程序员调用方法的时候比较方便,虽然调用的是不同的方法,但是就感觉在使用一个方法一样,不需要记忆更多的方法名
  • 代码美观
  • 前提是功能相似的时候可以取相同的方法名
  • 构成方法重载的条件
    1.必须在同一个类当中
    2.方法名相同
    3.参数列表不同——数量不同、顺序不同、类型不同
  • 方法重载仅仅和方法名+参数列表有关系

方法的递归调用

  • 递归就是方法自身调用自身
  • 递归算法费栈内存
  • 程序运行的时候发生栈内存溢出错误,无法挽回,只有一个结果就是JVN停止工作
  • 递归必须有结束条件,没有结束条件一定会发生栈内存溢出错误
  • 递归即使有了结束条件,即使结束条件是正确的,也有可能发生栈内存溢出错误,因为递归的太深了
    注意:递归可以不适用尽量别用,但是有些情况下,该功能的实现必须依靠递归方式,例如(目录拷贝)

你可能感兴趣的:(2019-03-08)