Java初学者问题求助!!

snowshine1985 2013-02-05 04:03:15
请问各位在BB类里定义的aa是在堆内存还是栈内存中的,请详细说说这个小程序的内存执行过程好吗?(AA类清楚) 谢谢各位!!

public class AA {
private int i;
public AA(int i){
this.setI(i);
}
public int getI(){
return this.i;
}
public void setI(int i){
this.i=i;
}
}
public class BB {
private AA aa;
public BB(AA aa){
this.setAA(aa);
}
public AA getAA(){
return this.aa;
}
public void setAA(AA aa){
this.aa=aa;
}
}
public class Main {
public static void main(String[] args){
AA x1=new AA(3);
BB x2=new BB(x1);
System.out.println(x2.getAA().getI());
}
}
...全文
248 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
飞翔的卡其啦 2013-02-06
  • 打赏
  • 举报
回复
堆内存,AA x1=new AA(3); 生成了类AA的对象,x1是该对象的引用。x1所指向的对象保存在堆内存中。 当BB x2=new BB(x1)时,只是把对类AA的对象的引用复制给了类BB的成员变量aa。 所以x1和aa都是指向一个对象,都保存在堆内存中。
xtfgy2012 2013-02-05
  • 打赏
  • 举报
回复
堆内存,因为是成员变量,是对象的一部分,分配在堆上 对象消失后,它才消失。
w774254848 2013-02-05
  • 打赏
  • 举报
回复
是栈内存、、、
maxcai 2013-02-05
  • 打赏
  • 举报
回复
觉得是stack
  • 打赏
  • 举报
回复
栈内存存放的是一些基本类型的变量和对象的引用变量; 堆内存存放是由new创建的对象和数组。
内容概要:本报告基于寻汇与万事达卡在2026年联合发布的《超越自动化:定义智能体驱动的全球支付》白皮书,系统分析了AI智能体在B2B跨境支付领域的应用与发展。报告指出,传统跨境支付存在效率低、人工干预多、合规风险高等问题,当前正从数字化、数据化迈向“自主化”新阶段。AI智能体可在授权下自主完成支付、换汇、合规审核、对账等全流程操作,核心技术包括深度强化学习、自然语言处理和图神经网络,用于路径优化、合规解析与异常检测。报告揭示了决策可解释性不足、跨系统协同标准缺失、安全审计机制缺位三大研究空白,并探讨了法律责任归属、监管碎片化、数据主权与技术可靠性四大现实挑战。寻汇与万事达卡的合作构建了“智能体编排引擎”与全球合规决策网络,首次提出L0-L5的智能体自主化等级框架,推动行业标准化。预计2026至2027年将实现首批大规模商业部署,提升支付效率超30%。; 适合人群:金融科技研究人员、AI技术开发者、跨境支付行业从业者、企业财资管理人员及政策监管机构相关人员。; 使用场景及目标:①理解AI智能体在跨境支付中的技术架构与应用场景;②把握自主化支付的演进趋势与商业化前景;③为金融机构和技术公司布局AI驱动型支付系统提供战略参考;④助力监管机构制定适应智能体时代的合规框架。; 阅读建议:本报告兼具技术深度与产业视野,建议结合白皮书原文及相关技术文献对照研读,重点关注智能体决策逻辑、合规实现机制与跨系统集成方案,并关注后续试点项目的实际成效与监管反馈。

62,622

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧