java基础知识--方法重写和方法重载

本文详细介绍了Java虚拟机(JVM)中的方法栈运作原理及其在内存管理中的作用,包括方法的调用流程、参数传递机制及如何利用方法栈进行方法调用与数据处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法栈

getArea(int i,int j)

return i*j;

main

int a=getArea(5,6)

syso(a);

方法和数据共享区

Method Demo.class

main()

getArea()

程序运行期间,必须要进入内存

运行文件,编译后的class文件进入内存

jvm虚拟机,调用main

main方法进栈运行

main方法中,调用getArea(),传递参数

getArea()方法进栈运行

计算结果返回调用者

方法getArea()就结束了,出栈,释放资源

main获取到方法getArea()的结果30

数据多了存数组

数据太多,定义变量,代码重复多,写很麻烦。

jvm对自己的内存进行了划分,分成5个区域

  1. 寄存器,内存和cpu之间
  2. 本地方法栈:jvm调用了系统中的功能
  3. 方法和数据共享区:运行期间calss文件进入的地方
  4. 方法栈:所有方法运行的时候,进入内存
  5. 堆:存储的是容器和对象

方法栈:

main  

main方法进入栈内存运行,main方法压栈运行

int[] a = new int[3]

a保存的数据实质是内存中的地址

new int[3]

 

 

 

jvm在堆内存,开空间,存储数组容器

方法和数据共享区

ArrayDemo.class

数据在内存中,就有自己的内存地址

方法重写:子类继承父类,出现和父类一模一样的的方法声明

方法重载:

条件:

参数列表不同:参数的个数,参数的数据类型,顺序

注意:

  1. 参数列表必须不同
  2. 重载与参数变量名无关
  3. 重载与返回值类型无关
  4. 重载与修饰符无关

技巧:

重载只看方法名和参数列表

方法调用中的参数传递问题:

方法参数是基本数据类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值