为了账号安全,请及时绑定邮箱和手机立即绑定

突然想到一个问题,当new 一个class的时候,他们的方法是指向同一个内存地址的,还是指向不同的

突然想到一个问题,当new 一个class的时候,他们的方法是指向同一个内存地址的,还是指向不同的

肥皂起泡泡 2019-03-15 15:15:40
当new 一个class的时候,他们的方法是指向同一个内存地址的,还是指向不同的内存地址的?因为学javascript的时候,用原型定义的方法是指向同一个地址的,java new 的时候感觉是创建不同的地址,是不是这样?这样是不是会浪费很多内存空间?不同修饰词是不是也不同?比如下面的private void cancelStopToast() {    if (mStopToast != null) {        mStopToast.cancel();        mStopToast = null;    }}// lifecyclepublic void onPause() {    if (isCustomViewShowing()) {        onHideCustomView();    }    cancelStopToast();    mActivityPaused = true;}
查看完整描述

2 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

类的定义信息是放在方法区的,当然包括类的方法定义,方法区是JVM中一块共享的内存空间,所以所有的对象都指向同一个地方的。


查看完整回答
反对 回复 2019-04-16
?
largeQ

TA贡献2039条经验 获得超7个赞

方法肯定是指向同一个地址,因为方法是静态的嘛。。


查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 597 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信